/* ============================================================
   BookKav — Marketing / core pages (refined literary luxury)
   ============================================================ */
.bk-textured{position:relative;}

/* ---- emerald landing hero (glass header pulled up) ---- */
.landing-hero{position:relative; overflow:hidden; color:#FBF6EA; margin-top:-74px;
  padding:calc(74px + clamp(2.6rem,6vw,4.4rem)) 0 clamp(2.8rem,5vw,4.2rem);
  background:
    radial-gradient(130% 130% at 50% 12%,transparent 52%,rgba(4,20,14,.5) 100%),
    radial-gradient(46% 56% at 84% 0%,rgba(214,172,96,.2),transparent 58%),
    radial-gradient(62% 76% at 4% 106%,rgba(47,123,97,.34),transparent 64%),
    linear-gradient(155deg,#0d3f30 0%,#104a39 47%,#0a3124 100%);}
.landing-hero::after{content:""; position:absolute; inset:0; pointer-events:none; opacity:.05; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
.landing-hero>.container{position:relative; z-index:1;}
@media (max-width:620px){ .landing-hero{margin-top:-64px; padding-top:calc(64px + 2.4rem);} }
.landing-hero__grid{display:grid; grid-template-columns:1.3fr .82fr; gap:clamp(1.8rem,4vw,3.4rem); align-items:center;}
@media (max-width:900px){ .landing-hero__grid{grid-template-columns:1fr;} }
.landing-hero h1{font-size:clamp(1.9rem,4vw,3rem); font-weight:700; color:#FBF6EA; line-height:1.32; margin:0 0 1rem;}
.landing-hero__lead{color:rgba(251,246,234,.82); font-size:1.05rem; line-height:1.95; max-width:54ch; margin:0 0 1.5rem;}
.landing-hint{color:rgba(231,206,148,.82); font-size:.9rem; margin:1.2rem 0 0;}
.eyebrow--gold{color:#DCB877;}
.eyebrow--gold::before{background:rgba(220,184,119,.5);}
.hero-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:.3rem;}

/* generic emerald hero pull-up for simple pages (faq / legal / library) */
.mk-hero{margin-top:-74px; padding-top:clamp(112px,11vw,150px); padding-bottom:clamp(2rem,4vw,3rem);}
@media (max-width:620px){ .mk-hero{margin-top:-64px; padding-top:100px;} }

/* about emblem (glass + gold) */
.about-emblem{display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:.7rem; padding:clamp(2rem,4vw,3rem); border-radius:var(--radius-xl); background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.035)); border:1px solid rgba(231,206,148,.3); backdrop-filter:blur(8px);}
.about-emblem>span{width:80px; height:80px; border-radius:22px; display:grid; place-items:center; background:linear-gradient(140deg,#E7CE94,#A8812D); color:#0d3f30; font-family:var(--font-display); font-weight:800; font-size:2.4rem; box-shadow:0 16px 36px -16px rgba(0,0,0,.5);}
.about-emblem>strong{font-family:var(--font-latin); font-size:1rem; color:#FBF6EA; letter-spacing:.04em;}
.about-emblem>small{color:rgba(231,206,148,.82); font-size:.85rem;}

/* language hook + upload callout (translation heroes) */
.language-hook{display:inline-flex; flex-direction:column; gap:.15rem; padding:1.1rem 1.4rem; margin:1.3rem 0; border-radius:var(--radius-lg); background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.03)); border:1px solid rgba(231,206,148,.28);}
.language-hook>span{color:rgba(251,246,234,.78); font-size:.95rem;}
.language-hook>strong{font-family:var(--font-display); font-weight:700; font-size:1.6rem; color:#E7C67C; line-height:1.2;}
.language-hook>small{color:rgba(251,246,234,.72); font-size:.82rem; margin-top:.35rem;}
.upload-callout{display:flex; flex-direction:column; gap:.7rem; align-items:center; text-align:center; padding:clamp(1.6rem,3vw,2.2rem); border-radius:var(--radius-xl); background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.035)); border:1px solid rgba(231,206,148,.3); backdrop-filter:blur(8px); color:#FBF6EA;}
.upload-callout__icon{width:84px; height:84px; border-radius:20px; display:grid; place-items:center; font-family:var(--font-latin); font-weight:700; font-size:1.05rem; letter-spacing:.05em; background:linear-gradient(140deg,var(--bk-brand),#0f4a39); color:#E7CE94; border:1px solid rgba(231,206,148,.3);}
.upload-callout h2{font-size:1.2rem; color:#FBF6EA; margin:.3rem 0 0;}
.upload-callout p{color:rgba(251,246,234,.8); line-height:1.85; font-size:.92rem; margin:0;}
.upload-callout small{color:rgba(231,206,148,.72); font-size:.78rem;}
.upload-callout .btn{margin-top:.3rem;}

/* ---- light content sections ---- */
.lux-section{padding:clamp(46px,5.5vw,82px) 0;}
.lux-section--light{background:var(--bk-inset);}
.process-section{padding:clamp(46px,5.5vw,82px) 0; background:var(--bk-card);}
.section-heading{margin-bottom:clamp(1.8rem,3vw,2.6rem);}
.section-heading--center{text-align:center;}
.section-heading--center .eyebrow{justify-content:center;}
.section-heading h2{font-size:clamp(1.5rem,2.8vw,2.1rem); font-weight:700; color:var(--bk-heading); margin:0; line-height:1.45;}

/* story grid (about) */
.story-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem;}
@media (max-width:820px){ .story-grid{grid-template-columns:1fr;} }
.story-card{position:relative; overflow:hidden; padding:clamp(1.4rem,3vw,1.9rem); border-radius:var(--radius-lg); background:var(--bk-card); border:1px solid var(--bk-border); box-shadow:var(--shadow-soft);}
.story-card::before{content:""; position:absolute; inset-inline:0; top:0; height:2px; background:linear-gradient(90deg,transparent,var(--bk-gold),transparent); opacity:.5;}
.story-card--wide{grid-column:1 / -1;}
.story-card>span{display:block; font-weight:600; color:var(--bk-gold-700,#7a5e1f); font-size:.85rem; margin-bottom:.5rem;}
.story-card h2{font-size:1.3rem; font-weight:700; margin:.2rem 0 .6rem; color:var(--bk-heading);}
.story-card p{color:var(--bk-body); line-height:1.9; margin:0;}

/* timeline / process */
.timeline-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem;}
@media (max-width:820px){ .timeline-grid{grid-template-columns:1fr;} }
.timeline-grid article{padding:clamp(1.4rem,3vw,1.9rem); border-radius:var(--radius-lg); background:var(--bk-inset); border:1px solid var(--bk-border);}
.timeline-grid article>span{display:grid; place-items:center; width:42px; height:42px; border-radius:12px; font-family:var(--font-main); font-weight:700; font-size:1.1rem; background:linear-gradient(140deg,var(--bk-brand),#0f4a39); color:#E7CE94; margin-bottom:.9rem;}
.timeline-grid h3{font-size:1.1rem; font-weight:700; margin:0 0 .5rem; color:var(--bk-heading);}
.timeline-grid p{color:var(--bk-body); line-height:1.85; margin:0;}

/* lux card / contact panel */
.lux-card{position:relative; overflow:hidden; padding:clamp(1.4rem,3vw,1.9rem); border-radius:var(--radius-lg); background:var(--bk-card); border:1px solid var(--bk-border); box-shadow:var(--shadow-soft);}
.lux-card h2{font-size:1.2rem; font-weight:700; margin:0 0 1rem; color:var(--bk-heading);}
.contact-panel{display:flex; flex-direction:column; gap:.65rem;}
.landing-hero .contact-panel{background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.035)); border-color:rgba(231,206,148,.3); backdrop-filter:blur(8px); box-shadow:0 20px 44px -26px rgba(0,0,0,.6);}
.landing-hero .contact-panel h2{color:#FBF6EA;}
.contact-panel a{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 1rem; border-radius:var(--radius-md); border:1px solid rgba(231,206,148,.2); background:rgba(255,255,255,.05); transition:border-color .25s var(--ease),background .25s var(--ease);}
.contact-panel a:hover{border-color:rgba(231,206,148,.45); background:rgba(255,255,255,.09);}
.contact-panel a span{color:rgba(251,246,234,.74); font-size:.85rem;}
.contact-panel a strong{color:#E7C67C; font-family:var(--font-latin); font-size:.95rem; direction:ltr;}

/* contact routes (light) */
.contact-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem;}
@media (max-width:820px){ .contact-grid{grid-template-columns:1fr;} }
.contact-route{display:flex; flex-direction:column; gap:.6rem; align-items:flex-start; padding:clamp(1.4rem,3vw,1.9rem); border-radius:var(--radius-lg); background:var(--bk-card); border:1px solid var(--bk-border); box-shadow:var(--shadow-soft);}
.contact-route>span{font-weight:700; color:var(--bk-heading); font-size:1.1rem;}
.contact-route p{color:var(--bk-body); line-height:1.85; margin:0; flex:1;}
.contact-route .btn{margin-top:.4rem;}

/* funnel (translation body) */
.funnel-grid{display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.8rem,4vw,3rem); align-items:start;}
@media (max-width:900px){ .funnel-grid{grid-template-columns:1fr;} }
.funnel-copy h2{font-size:clamp(1.4rem,2.6vw,2rem); font-weight:700; color:var(--bk-heading); line-height:1.55; margin:.3rem 0 1rem;}
.funnel-copy p{color:var(--bk-body); line-height:1.95; margin:0;}
.typed-bullets{display:flex; flex-direction:column; gap:.9rem;}
.typed-bullets article{display:flex; gap:1rem; padding:1.2rem 1.3rem; border-radius:var(--radius-lg); background:var(--bk-card); border:1px solid var(--bk-border); box-shadow:var(--shadow-soft);}
.typed-bullets article>span{flex:none; display:grid; place-items:center; width:38px; height:38px; border-radius:11px; font-family:var(--font-main); font-weight:700; background:linear-gradient(140deg,var(--bk-brand),#0f4a39); color:#E7CE94;}
.typed-bullets p{color:var(--bk-body); line-height:1.85; margin:0;}

/* placeholder grid (library landing) */
.placeholder-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; padding-block:clamp(2rem,4vw,3.4rem);}
@media (max-width:820px){ .placeholder-grid{grid-template-columns:1fr;} }
.placeholder-grid .lux-card p{color:var(--bk-body); line-height:1.85; margin:.5rem 0 0;}

/* secondary button */
.btn--secondary{background:rgba(21,97,74,.08); color:var(--bk-brand); border:1px solid color-mix(in srgb,var(--bk-brand) 25%,transparent);}
.btn--secondary:hover{background:rgba(21,97,74,.14); border-color:var(--bk-brand);}

/* ============================================================
   FAQ
   ============================================================ */
.faq-wrap{padding:clamp(46px,5.5vw,82px) 0;}
.faq-list{display:flex; flex-direction:column; gap:.7rem; max-width:800px; margin:0 auto;}
.faq-item{border:1px solid var(--bk-border); border-radius:var(--radius-md); background:var(--bk-card); overflow:hidden; box-shadow:var(--shadow-soft); transition:border-color .25s var(--ease);}
.faq-item[open]{border-color:color-mix(in srgb,var(--bk-gold) 38%,transparent);}
.faq-item summary{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.1rem 1.3rem; cursor:pointer; font-weight:600; color:var(--bk-heading); list-style:none;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+"; font-size:1.35rem; line-height:1; color:var(--bk-gold-700,#7a5e1f); transition:transform .25s var(--ease);}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item__body{padding:0 1.3rem 1.2rem; color:var(--bk-body); line-height:1.95;}

/* ============================================================
   Legal (terms / privacy)
   ============================================================ */
.legal-doc{max-width:820px; margin:0 auto; padding:clamp(46px,5.5vw,82px) 0;}
.legal-meta{color:var(--bk-muted); font-size:.85rem; margin:0 0 2rem; padding-bottom:1.2rem; border-bottom:1px solid var(--bk-border);}
.legal-section{margin-bottom:2rem;}
.legal-section:last-child{margin-bottom:0;}
.legal-section h2{position:relative; padding-inline-start:.9rem; font-size:1.25rem; font-weight:700; color:var(--bk-heading); margin:0 0 .7rem;}
.legal-section h2::before{content:""; position:absolute; inset-inline-start:0; top:.18em; bottom:.18em; width:4px; border-radius:2px; background:linear-gradient(var(--bk-gold),color-mix(in srgb,var(--bk-gold) 15%,transparent));}
.legal-section p{color:var(--bk-body); line-height:2; margin:0 0 .8rem;}
.legal-section p:last-child{margin-bottom:0;}
