/*
 * Fliptum Theme — A1 visual design system.
 * Pure-white base, medium-first typography, controlled green/blue accents,
 * premium 3D depth and progressive pointer interaction.
 */

:root{
	--fliptum-a1-shadow-xs:0 1px 2px color-mix(in srgb,var(--fliptum-color-text) 5%,transparent),0 5px 14px color-mix(in srgb,var(--fliptum-color-text) 4%,transparent);
	--fliptum-a1-shadow-sm:0 2px 5px color-mix(in srgb,var(--fliptum-color-text) 5%,transparent),0 12px 28px color-mix(in srgb,var(--fliptum-color-text) 6%,transparent);
	--fliptum-a1-shadow-md:0 4px 10px color-mix(in srgb,var(--fliptum-color-text) 6%,transparent),0 22px 48px color-mix(in srgb,var(--fliptum-color-text) 9%,transparent);
	--fliptum-a1-shadow-lg:0 10px 24px color-mix(in srgb,var(--fliptum-color-text) 8%,transparent),0 34px 70px color-mix(in srgb,var(--fliptum-color-primary) 11%,transparent);
	--fliptum-a1-border:color-mix(in srgb,var(--fliptum-color-border) calc(var(--fliptum-card-border-alpha,.82) * 100%),transparent);
	--fliptum-a1-soft:color-mix(in srgb,var(--fliptum-color-primary) 3.2%,var(--fliptum-color-surface));
	--fliptum-a1-blue-soft:color-mix(in srgb,var(--fliptum-color-secondary) 3.5%,var(--fliptum-color-surface));
	--fliptum-a1-ease:cubic-bezier(.22,.61,.36,1);
}

/* Typography: no tiny interface text. */
body{letter-spacing:-.006em}
.fliptum-site-branding__tagline,
.fliptum-entry-meta,
.fliptum-content-card__meta,
.fliptum-home-post__meta,
.fliptum-builder-copyright,
.fliptum-site-footer__bottom{font-size:max(14px,var(--fliptum-font-xs));line-height:1.45}
.fliptum-builder-menu a,
.fliptum-nav-list a,
.fliptum-utility-nav a,
.fliptum-footer-nav__list a,
.fliptum-button,
button,input,select,textarea,table{font-size:var(--fliptum-font-ui,16px)}

h1,h2,h3,h4,h5,h6{letter-spacing:-.025em}
h1{letter-spacing:-.042em}

/* Header: crisp white, subtle 3D separator, clearer menu interaction. */
.fliptum-site-header{
	background:color-mix(in srgb,var(--fliptum-color-surface) 97%,transparent);
	border-bottom-color:color-mix(in srgb,var(--fliptum-color-border) 86%,transparent);
	box-shadow:0 1px 0 color-mix(in srgb,var(--fliptum-color-text) 2%,transparent),0 8px 28px color-mix(in srgb,var(--fliptum-color-text) 3.5%,transparent);
	backdrop-filter:saturate(1.08) blur(10px);
}
.fliptum-builder-menu>li>a,.fliptum-nav-list>li>a{position:relative}
.fliptum-builder-menu>li>a::after,.fliptum-nav-list>li>a::after{
	content:"";position:absolute;left:14%;right:14%;bottom:.12rem;height:2px;border-radius:999px;
	background:var(--fliptum-color-primary);transform:scaleX(0);transform-origin:center;
	transition:transform .2s var(--fliptum-a1-ease);opacity:.9
}
.fliptum-builder-menu>li>a:hover::after,.fliptum-builder-menu>.current-menu-item>a::after,
.fliptum-nav-list>li>a:hover::after,.fliptum-nav-list>.current-menu-item>a::after{transform:scaleX(1)}
.fliptum-builder-menu .sub-menu,.fliptum-nav-list .sub-menu{box-shadow:var(--fliptum-a1-shadow-md);border-color:var(--fliptum-a1-border)}
.fliptum-icon-button,.fliptum-builder-menu--utility>li>a{
	box-shadow:var(--fliptum-a1-shadow-xs);transition:transform .18s var(--fliptum-a1-ease),box-shadow .18s ease,border-color .18s ease
}
.fliptum-icon-button:hover,.fliptum-builder-menu--utility>li>a:hover{transform:translateY(-2px);box-shadow:var(--fliptum-a1-shadow-sm)}

/* Global surfaces. */
.fliptum-card,
.fliptum-sidebar,
.fliptum-content-card{
	border-color:var(--fliptum-a1-border);
	background:var(--fliptum-color-surface)
}
body.fliptum-depth-flat .fliptum-card{box-shadow:none}
body.fliptum-depth-soft-3d .fliptum-card{box-shadow:var(--fliptum-a1-shadow-xs)}
body.fliptum-depth-elevated .fliptum-card{box-shadow:var(--fliptum-a1-shadow-sm)}

.fliptum-main{padding-block:clamp(3.75rem,5vw,5.75rem)}
.fliptum-home-section{padding-block:var(--fliptum-section-space,84px)}
body.fliptum-rhythm-compact .fliptum-home-section{padding-block:64px}
body.fliptum-rhythm-airy .fliptum-home-section{padding-block:104px}

/* Homepage hero: wide, premium and unmistakably dynamic. */
.fliptum-home-hero{
	isolation:isolate;overflow:hidden;
	padding-top:clamp(4.8rem,7vw,7.5rem);
	background:
		radial-gradient(circle at 76% 28%,color-mix(in srgb,var(--fliptum-color-primary) 7%,transparent),transparent 25rem),
		radial-gradient(circle at 88% 45%,color-mix(in srgb,var(--fliptum-color-secondary) 6%,transparent),transparent 22rem),
		var(--fliptum-color-surface)
}
.fliptum-home-hero__content{max-width:44rem}
.fliptum-home-hero__title{
	max-width:13ch;margin-bottom:1.45rem;
	font-size:clamp(3rem,2.1rem + 2.55vw,4.6rem);
	line-height:1.02;letter-spacing:-.052em
}
.fliptum-home-hero__title strong,.fliptum-home-hero__title em{color:var(--fliptum-color-primary);font-style:normal}
.fliptum-home-hero__text{max-width:42rem;font-size:clamp(1.05rem,.98rem + .28vw,1.22rem);line-height:1.7}
.fliptum-home-hero__search{
	max-width:42rem;padding:.48rem;border-color:color-mix(in srgb,var(--fliptum-color-primary) 15%,var(--fliptum-color-border));
	border-radius:1rem;box-shadow:var(--fliptum-a1-shadow-sm)
}
.fliptum-home-hero__search:focus-within{border-color:color-mix(in srgb,var(--fliptum-color-primary) 58%,var(--fliptum-color-border));box-shadow:0 0 0 4px color-mix(in srgb,var(--fliptum-color-primary) 8%,transparent),var(--fliptum-a1-shadow-sm)}
.fliptum-home-hero__search .search-field,.fliptum-home-hero__search .search-submit{min-height:3.45rem}
.fliptum-home-hero__actions{gap:.9rem;margin-top:1.25rem}
.fliptum-button{min-height:3.1rem;padding:.74rem 1.18rem;border-radius:.78rem;font-size:var(--fliptum-font-ui,16px);box-shadow:var(--fliptum-a1-shadow-xs)}
.fliptum-button--primary{box-shadow:0 .3rem .8rem color-mix(in srgb,var(--fliptum-color-primary) 14%,transparent),0 .9rem 2rem color-mix(in srgb,var(--fliptum-color-primary) 16%,transparent)}
.fliptum-button:hover{transform:translateY(-2px)}
.fliptum-home-hero__visual{min-height:34rem;perspective:1100px}
.fliptum-home-hero__visual::before{
	inset:9% 0 6% 8%;
	background:radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--fliptum-color-primary) 13%,var(--fliptum-color-surface)) 0 28%,color-mix(in srgb,var(--fliptum-color-secondary) 8%,var(--fliptum-color-surface)) 29% 49%,transparent 67%);
	filter:drop-shadow(0 28px 34px color-mix(in srgb,var(--fliptum-color-primary) 8%,transparent))
}
.fliptum-home-hero__product{
	border-color:color-mix(in srgb,var(--fliptum-color-primary) 13%,var(--fliptum-color-border));
	border-radius:1.12rem;
	box-shadow:0 .35rem .8rem color-mix(in srgb,var(--fliptum-color-text) 7%,transparent),0 1.7rem 3.6rem color-mix(in srgb,var(--fliptum-color-text) 15%,transparent)
}
.fliptum-home-hero__product--2{box-shadow:0 .5rem 1rem color-mix(in srgb,var(--fliptum-color-text) 8%,transparent),0 2rem 4.2rem color-mix(in srgb,var(--fliptum-color-primary) 13%,transparent)}
.fliptum-home-hero__panel{right:-.5rem;bottom:.8rem;border-color:color-mix(in srgb,var(--fliptum-color-primary) 18%,var(--fliptum-color-border));border-radius:1rem;box-shadow:var(--fliptum-a1-shadow-md)}
.fliptum-home-wave{height:clamp(6.5rem,11vw,10.5rem);filter:drop-shadow(0 -8px 18px color-mix(in srgb,var(--fliptum-color-primary) 3%,transparent))}
.fliptum-home-wave__back{fill:color-mix(in srgb,var(--fliptum-color-secondary) 16%,var(--fliptum-color-surface))}
.fliptum-home-wave__middle{fill:color-mix(in srgb,var(--fliptum-color-primary) 15%,var(--fliptum-color-surface))}
.fliptum-home-wave__front{fill:color-mix(in srgb,var(--fliptum-color-primary) 8%,var(--fliptum-color-surface))}

/* Section headers: medium and confident, never tiny. */
.fliptum-home-section__header{margin-bottom:clamp(2.1rem,3vw,3rem)}
.fliptum-home-section__header h2,.fliptum-home-panel__header h2{font-size:clamp(2rem,1.65rem + .9vw,2.65rem);line-height:1.12}
.fliptum-home-section__eyebrow{font-size:max(14px,var(--fliptum-font-xs));letter-spacing:.065em}
.fliptum-home-section__link{font-size:var(--fliptum-font-ui,16px)}

/* Smart tools and cards. */
.fliptum-home-tools__grid{gap:1.45rem}
.fliptum-home-tool{
	min-height:10.25rem;padding:1.6rem;border-color:var(--fliptum-a1-border);border-radius:1.05rem;
	box-shadow:var(--fliptum-a1-shadow-xs);background:linear-gradient(180deg,var(--fliptum-color-surface),color-mix(in srgb,var(--fliptum-color-primary) 1.5%,var(--fliptum-color-surface)))
}
.fliptum-home-tool__icon,.fliptum-home-resource-list__icon,.fliptum-home-exam__icon,.fliptum-home-category__icon{
	width:3.15rem;height:3.15rem;border-radius:.92rem;border:1px solid color-mix(in srgb,var(--fliptum-color-primary) 12%,var(--fliptum-color-border));
	box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 14px color-mix(in srgb,var(--fliptum-color-primary) 6%,transparent)
}
.fliptum-home-tool__body strong{font-size:1.08rem}
.fliptum-home-tool__body span{font-size:max(15px,var(--fliptum-font-sm))}

/* Product/book cards: image-first and less compact. */
.fliptum-home-books{background:linear-gradient(180deg,var(--fliptum-color-surface),var(--fliptum-a1-soft),var(--fliptum-color-surface))}
.fliptum-home-books__grid{gap:clamp(1.5rem,2vw,2rem)}
.fliptum-home-book{border-radius:1.15rem;border-color:var(--fliptum-a1-border);box-shadow:var(--fliptum-a1-shadow-xs)}
.fliptum-home-book__media{min-height:26rem;padding:2.1rem 1.5rem 1.45rem;background:linear-gradient(180deg,#fff,color-mix(in srgb,var(--fliptum-color-primary) 1.6%,#fff))}
.fliptum-home-book__media img{width:min(100%,16rem);height:21.5rem;filter:drop-shadow(0 18px 16px color-mix(in srgb,var(--fliptum-color-text) 12%,transparent))}
.fliptum-home-book__body{padding:1.45rem 1.5rem 1.6rem}
.fliptum-home-book__body h3{font-size:1.22rem;line-height:1.32;margin-bottom:.75rem}
.fliptum-home-book__price{font-size:1.08rem}

/* Publishing and resource cards. */
.fliptum-home-posts__grid{gap:1.7rem}
.fliptum-home-post,.fliptum-home-gallery-card,.fliptum-home-panel,.fliptum-home-exam,.fliptum-home-category{
	border-color:var(--fliptum-a1-border);box-shadow:var(--fliptum-a1-shadow-xs)
}
.fliptum-home-post{border-radius:1.05rem}
.fliptum-home-post__body{padding:1.55rem}
.fliptum-home-post__body h3{font-size:1.22rem;line-height:1.34}
.fliptum-home-post__body p{font-size:max(15px,var(--fliptum-font-sm));line-height:1.58}
.fliptum-home-post__meta{font-size:max(14px,var(--fliptum-font-xs))}
.fliptum-home-panel{border-radius:1.12rem;padding:clamp(1.7rem,2.3vw,2.3rem)}
.fliptum-home-category,.fliptum-home-exam{border-radius:.95rem;padding:1.05rem}
.fliptum-home-gallery-card{border-radius:1rem;overflow:hidden}
.fliptum-home-gallery-card__body{padding:1rem 1.05rem 1.1rem}

/* Benefits + newsletter. */
.fliptum-home-benefits{background:linear-gradient(180deg,var(--fliptum-color-surface),var(--fliptum-a1-blue-soft),var(--fliptum-color-surface))}
.fliptum-home-benefit__icon{box-shadow:var(--fliptum-a1-shadow-xs)}
.fliptum-home-benefit h3{font-size:1.05rem}.fliptum-home-benefit p{font-size:max(15px,var(--fliptum-font-sm));line-height:1.55}
.fliptum-home-newsletter__card{
	border-radius:1.25rem;border-color:color-mix(in srgb,var(--fliptum-color-primary) 22%,var(--fliptum-color-border));
	background:linear-gradient(135deg,color-mix(in srgb,var(--fliptum-color-primary) 5%,#fff),#fff 48%,color-mix(in srgb,var(--fliptum-color-secondary) 4%,#fff));
	box-shadow:var(--fliptum-a1-shadow-sm)
}

/* Tables: clear medium text and clean rows. */
.fliptum-entry-content table,.fliptum-builder-table{font-size:var(--fliptum-font-ui,16px);border-spacing:0;border-collapse:separate;border:1px solid var(--fliptum-color-border);border-radius:.85rem;overflow:hidden}
.fliptum-entry-content th,.fliptum-entry-content td,.fliptum-builder-table th,.fliptum-builder-table td{padding:.82rem .95rem}
.fliptum-entry-content th,.fliptum-builder-table th{background:var(--fliptum-a1-soft);font-weight:750}

/* Footer: white and structured. */
.fliptum-footer-builder,.fliptum-site-footer{background:#fff}
.fliptum-builder-row--footer-top,.fliptum-builder-row--footer-main,.fliptum-builder-row--footer-bottom{border-color:color-mix(in srgb,var(--fliptum-color-border) 84%,transparent)}
.fliptum-builder-menu--footer a,.fliptum-builder-menu--footer-secondary a{font-size:max(15px,var(--fliptum-font-sm))}

/* Pointer profiles. JS only writes tilt values for A1 mode. */
@media (hover:hover) and (pointer:fine){
	body:not(.fliptum-hover-none) .fliptum-hover-surface{transition:transform .22s var(--fliptum-a1-ease),border-color .22s ease,box-shadow .22s ease}
	body.fliptum-hover-lift .fliptum-hover-surface:hover{transform:translateY(-4px);box-shadow:var(--fliptum-a1-shadow-md)}
	body.fliptum-hover-glow .fliptum-hover-surface:hover{transform:translateY(-4px);box-shadow:var(--fliptum-a1-shadow-md),0 0 0 1px color-mix(in srgb,var(--fliptum-color-primary) 16%,transparent)}
	body.fliptum-hover-a1 .fliptum-hover-surface:hover{transform:perspective(1100px) rotateX(var(--fliptum-hover-rx,0deg)) rotateY(var(--fliptum-hover-ry,0deg)) translateY(-4px);box-shadow:var(--fliptum-a1-shadow-md)}
	body.fliptum-hover-a1 .fliptum-hover-surface:hover img{transform:scale(1.022)}
	body.fliptum-hover-none .fliptum-hover-surface:hover{transform:none;box-shadow:inherit}
}

/* Responsive design: keep type medium and cards readable. */
@media(max-width:72rem){
	.fliptum-home-hero__layout{grid-template-columns:1fr;gap:2.8rem}
	.fliptum-home-hero__content{max-width:48rem}
	.fliptum-home-hero__visual{width:min(100%,48rem);margin-inline:auto}
	.fliptum-home-books__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:48rem){
	.fliptum-home-hero{padding-top:3.4rem}
	.fliptum-home-hero__title{font-size:var(--fliptum-font-h1);line-height:1.06}
	.fliptum-home-section{padding-block:clamp(3.25rem,12vw,4.6rem)}
	.fliptum-home-section__header h2,.fliptum-home-panel__header h2{font-size:var(--fliptum-font-h2)}
	.fliptum-home-book__media{min-height:22rem}.fliptum-home-book__media img{height:18.5rem}
	.fliptum-home-tool{min-height:auto;padding:1.35rem}
}

@media(prefers-reduced-motion:reduce){
	.fliptum-hover-surface,.fliptum-hover-surface img,.fliptum-button,.fliptum-icon-button{transition:none!important;transform:none!important}
}

/* Phase 18 final lock — pure-white clarity + granular medium typography. */
html,body,.fliptum-site,.fliptum-site-main{background:var(--fliptum-color-background,#fff)}
.fliptum-site-header{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none}
body{font-size:var(--fliptum-font-body,17px)}
a,.fliptum-nav-list a,.fliptum-builder-menu a,.fliptum-footer-nav__list a{font-size:var(--fliptum-font-link,16px)}
.fliptum-button,button,.button,input[type=submit],input[type=button]{font-size:var(--fliptum-font-button,16px);font-weight:var(--fliptum-button-weight,600)}
input,select,textarea,.search-field{font-size:var(--fliptum-font-input,16px)}
label,.fliptum-form-label,.fliptum-field-label{font-size:var(--fliptum-font-label,15px);font-weight:var(--fliptum-label-weight,600)}
.fliptum-entry-meta,.fliptum-content-card__meta,.fliptum-home-post__meta,.fliptum-site-branding__tagline,.fliptum-site-footer__bottom,.fliptum-home-section__eyebrow{font-size:var(--fliptum-font-meta,15px)}
.fliptum-entry-content table,.fliptum-builder-table,table{font-size:var(--fliptum-font-table-body,16px)}
.fliptum-entry-content th,.fliptum-builder-table th,table th{font-size:var(--fliptum-font-table-head,16px);font-weight:var(--fliptum-table-heading-weight,650)}
.fliptum-entry-content td,.fliptum-builder-table td,table td{font-size:var(--fliptum-font-table-body,16px)}
.fliptum-home-book__media img{object-fit:contain}
.fliptum-home-gallery-card img,.fliptum-home-post img,.fliptum-content-card img{transition:transform .26s var(--fliptum-a1-ease)}
@media(max-width:72rem){.fliptum-home-hero__title{font-size:var(--fliptum-font-h1)}.fliptum-home-section__header h2,.fliptum-home-panel__header h2{font-size:var(--fliptum-font-h2)}}
/* Phase 22 — independent body and heading font tokens. */
html,body,input,select,textarea,button,.fliptum-site{font-family:var(--fliptum-font-body-family,var(--fliptum-font-family))}
h1,h2,h3,h4,h5,h6,.fliptum-heading,.site-title{font-family:var(--fliptum-font-heading-family,var(--fliptum-font-family))}
