*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdf9;color:#202020;font-family:Arial,Helvetica,sans-serif;line-height:1.6;overflow-x:hidden}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 36px));margin:auto}
:root{--coffee:#704241;--coffee-dark:#4f2d2d;--ivory:#f7f2ea;--gold:#c49a5a;--ink:#202020;--muted:#6f6762;--line:rgba(112,66,65,.16);--white:#fff}
.topbar{background:var(--coffee-dark);color:#fff;font-size:13px}.topbar-inner{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:18px}.topbar a{font-weight:800}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .3s ease,background .3s ease}.site-header.scrolled{box-shadow:0 12px 32px rgba(56,38,34,.10);background:rgba(255,253,249,.99)}
.nav-wrap{min-height:94px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:16px;min-width:0}.brand-logo{width:245px;max-height:72px;object-fit:contain}.brand-copy{display:flex;flex-direction:column;padding-left:16px;border-left:2px solid var(--line);line-height:1.15}.brand-copy strong{font-family:Georgia,serif;color:var(--coffee-dark);font-size:18px;white-space:nowrap}.brand-copy small{font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:5px}.nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.nav a{position:relative;transition:transform .22s ease,color .22s ease}.nav a:not(.nav-cta)::after{content:"";position:absolute;height:2px;background:var(--coffee);left:10%;right:10%;bottom:-7px;transform:scaleX(0);transition:transform .24s ease}.nav a:hover{transform:translateY(-1px);color:var(--coffee)}.nav a:hover::after{transform:scaleX(1)}.nav-cta{background:var(--coffee);color:#fff!important;padding:11px 16px;border-radius:10px}.menu-toggle{display:none;border:0;background:transparent;font-size:26px;color:var(--coffee);cursor:pointer}
.hero{padding:58px 0 70px;background:radial-gradient(circle at 85% 15%,rgba(196,154,90,.18),transparent 26%),linear-gradient(135deg,#fffdf9,#f3e8dc)}.hero-grid{display:grid;grid-template-columns:1.02fr .85fr .72fr;gap:28px;align-items:center}.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--coffee);margin-bottom:14px}.light{color:#ebcfa5}.hero h1,.section h2,.cta-box h2{font-family:Georgia,serif;letter-spacing:-.025em}.hero h1{font-size:clamp(40px,4.4vw,60px);line-height:1.06;margin:0 0 20px}.hero-lead{font-size:18px;color:#615954;margin-bottom:24px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:0 19px;border-radius:11px;font-weight:800;font-size:14px;border:1px solid transparent;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(79,45,45,.16)}.btn-primary{background:var(--coffee);color:#fff}.btn-secondary{background:#fff;color:var(--coffee);border-color:var(--line)}.btn-light{background:#fff;color:var(--coffee-dark)}.btn-block{width:100%}.trust-row{display:flex;flex-wrap:wrap;gap:9px 15px;margin-top:20px;font-size:12px;color:#655d58}
.hero-copy{animation:heroCopyIn .75s cubic-bezier(.2,.7,.2,1) both}.hero-image-wrap{position:relative;animation:heroImageIn .85s .08s cubic-bezier(.2,.7,.2,1) both}.hero-image{width:100%;height:545px;object-fit:cover;border-radius:24px;display:block;box-shadow:0 20px 50px rgba(60,39,35,.15);animation:heroFloat 5.5s ease-in-out infinite}.hero-image-card{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.94);padding:14px 16px;border-radius:14px;animation:cardFloat 4.4s ease-in-out infinite}.hero-image-card strong,.hero-image-card span{display:block}.hero-image-card strong{color:var(--coffee-dark);font-size:13px}.hero-image-card span{color:var(--muted);font-size:11px;margin-top:3px}
.hero-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:23px;box-shadow:0 16px 45px rgba(60,39,35,.12);animation:heroPanelIn .9s .16s cubic-bezier(.2,.7,.2,1) both}.panel-heading span{font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--gold)}.panel-heading h2{font-family:Georgia,serif;font-size:25px;line-height:1.2;margin:7px 0 6px}.panel-heading p{font-size:13px;color:var(--muted)}.hero-panel label{display:block;font-size:12px;font-weight:700;margin-bottom:11px}.hero-panel select,.hero-panel input{width:100%;height:46px;margin-top:5px;border:1px solid #d9d0c8;border-radius:10px;padding:0 11px;background:#fff}.hero-panel select:focus,.hero-panel input:focus{outline:none;border-color:var(--coffee);box-shadow:0 0 0 3px rgba(112,66,65,.08)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-note{text-align:center;color:var(--muted);font-size:11px;margin:8px 0 0}
.quick-strip{background:var(--coffee);color:#fff}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-grid>div{padding:20px 22px;border-right:1px solid rgba(255,255,255,.14);transition:background .24s ease,transform .24s ease}.quick-grid>div:hover{background:rgba(255,255,255,.055);transform:translateY(-2px)}.quick-grid strong,.quick-grid span{display:block}.quick-grid span{font-size:12px;color:#eaded7;margin-top:2px}
.section{padding:88px 0}.section-warm{background:var(--ivory)}.section-dark{background:#2b2221;color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.section h2{font-size:clamp(31px,3.4vw,45px);line-height:1.15;margin:8px 0 18px}.lead-copy{font-size:17px;color:var(--muted)}.image-frame{overflow:hidden;border-radius:24px}.image-frame img{width:100%;height:510px;object-fit:cover;display:block;border-radius:24px;box-shadow:0 18px 48px rgba(60,35,30,.10);transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .35s ease}.image-frame:hover img{transform:scale(1.035);filter:saturate(1.04) contrast(1.02)}
.problem-list{display:grid;gap:12px;margin-top:26px}.problem-list>div{padding:14px 0;border-bottom:1px solid var(--line)}.problem-list strong,.problem-list span{display:block}.problem-list span{font-size:13px;color:var(--muted);margin-top:3px}
.section-head{margin-bottom:40px}.centered{text-align:center;max-width:790px;margin-inline:auto}.centered p{color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{background:#fff;border:1px solid rgba(112,66,65,.09);border-radius:17px;padding:22px;box-shadow:0 7px 20px rgba(55,38,34,.04);transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 36px rgba(55,38,34,.10);border-color:rgba(112,66,65,.20)}.service-icon{width:38px;height:38px;border-radius:10px;background:var(--ivory);border:1px solid var(--line);color:var(--coffee);display:grid;place-items:center;font-weight:800;margin-bottom:16px}.service-card h3{font-size:16px;margin:0 0 8px}.service-card p{font-size:13px;color:var(--muted);margin:0}
.research-flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:24px 0}.research-flow span{background:var(--ivory);border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:700;transition:transform .22s ease,background .22s ease}.research-flow span:hover{transform:translateY(-2px);background:#fff}.research-flow b{color:var(--gold)}
.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}.section-dark p{color:#d7cbc5}.text-link{color:#efcfaa;font-weight:800}.steps{display:grid;gap:12px}.step{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:17px;border:1px solid rgba(255,255,255,.14);border-radius:13px;transition:transform .24s ease,background .24s ease}.step:hover{transform:translateX(5px);background:rgba(255,255,255,.045)}.step>span{width:37px;height:37px;border-radius:50%;background:var(--coffee);display:grid;place-items:center}.step h3{margin:0 0 4px}.step p{font-size:13px;margin:0}
.levels-grid{display:grid;grid-template-columns:1fr .9fr;gap:70px;align-items:start}.level-list{border-top:1px solid var(--line);margin-top:27px}.level-list>div{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.level-list span{color:var(--muted);font-size:13px}.subject-box{background:var(--ivory);border-radius:22px;padding:30px}.subject-box h3{font-family:Georgia,serif;font-size:25px}.subject-box p{font-size:13px;color:var(--muted);margin:18px 0 0}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:700;transition:transform .22s ease}.chips span:hover{transform:translateY(-2px)}
.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:start}.accordion details{border-bottom:1px solid var(--line);transition:background .22s ease,padding .22s ease}.accordion details[open]{background:rgba(255,255,255,.65);padding-inline:13px;border-radius:12px}.accordion summary{padding:18px 0;font-weight:800;cursor:pointer;transition:color .2s ease}.accordion summary:hover{color:var(--coffee)}.accordion p{font-size:13px;color:var(--muted);padding-bottom:16px;margin:0}
.cta-section{padding:0 0 80px}.cta-box{position:relative;overflow:hidden;background:var(--coffee);color:#fff;border-radius:24px;padding:42px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;box-shadow:0 20px 42px rgba(112,66,65,.16)}.cta-box::before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.08);right:-120px;top:-120px;animation:ctaGlow 7s ease-in-out infinite}.cta-box h2{font-size:36px;line-height:1.2;margin:7px 0 10px}.cta-box p{color:#eaded7;margin:0}.cta-actions{display:flex;flex-direction:column;align-items:center;gap:10px;z-index:1}.phone-link{font-size:12px;font-weight:800}
.integrity{background:#f0ebe4;padding:18px 0}.integrity .container{display:flex;gap:10px;font-size:12px;color:#6a625d}.integrity p{margin:0}.integrity strong{color:var(--coffee);white-space:nowrap}
footer{background:#181515;color:#fff;padding:45px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:55px}.footer-brand img{width:210px;background:#fff;border-radius:8px;padding:3px}.footer-brand strong{display:block;font-family:Georgia,serif;margin-top:11px}.footer-brand p{color:#aaa09a;font-size:13px;max-width:420px}.footer-grid h4{font-size:13px}.footer-grid a{display:block;color:#aaa09a;font-size:13px;margin:7px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.09);margin-top:30px;padding-top:17px;color:#807772;font-size:11px}
.floating-wa{position:fixed;right:18px;bottom:18px;z-index:45;background:#1f8f4e;color:#fff;display:flex;align-items:center;gap:8px;padding:10px 13px 10px 9px;border-radius:999px;box-shadow:0 8px 20px rgba(31,143,78,.20);animation:waPulse 2.6s ease-in-out infinite;transition:transform .22s ease,box-shadow .22s ease}.floating-wa:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 14px 30px rgba(31,143,78,.30)}.floating-wa span{width:28px;height:28px;border-radius:50%;background:#fff;color:#1f8f4e;display:grid;place-items:center;font-weight:900}.floating-wa strong{font-size:12px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.stagger>*{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.stagger.is-visible>*{opacity:1;transform:translateY(0)}.stagger.is-visible>*:nth-child(1){transition-delay:.04s}.stagger.is-visible>*:nth-child(2){transition-delay:.10s}.stagger.is-visible>*:nth-child(3){transition-delay:.16s}.stagger.is-visible>*:nth-child(4){transition-delay:.22s}.stagger.is-visible>*:nth-child(5){transition-delay:.28s}.stagger.is-visible>*:nth-child(6){transition-delay:.34s}.stagger.is-visible>*:nth-child(7){transition-delay:.40s}.stagger.is-visible>*:nth-child(8){transition-delay:.46s}.stagger.is-visible>*:nth-child(9){transition-delay:.52s}.stagger.is-visible>*:nth-child(10){transition-delay:.58s}.stagger.is-visible>*:nth-child(11){transition-delay:.64s}.stagger.is-visible>*:nth-child(12){transition-delay:.70s}
@keyframes heroCopyIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes heroImageIn{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes heroPanelIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes ctaGlow{0%,100%{transform:scale(1);opacity:.55}50%{transform:scale(1.18);opacity:.9}}@keyframes waPulse{0%,100%{box-shadow:0 8px 20px rgba(31,143,78,.18)}50%{box-shadow:0 10px 28px rgba(31,143,78,.34)}}
@media(max-width:1080px){.hero-grid{grid-template-columns:1fr 1fr}.hero-panel{grid-column:1/-1}.services-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.container{width:min(100% - 28px,1180px)}.topbar-inner{justify-content:center}.topbar-inner>span{display:none}.nav-wrap{min-height:80px}.brand-logo{width:175px}.brand-copy strong{font-size:13px;white-space:normal;max-width:150px}.brand-copy small{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;left:14px;right:14px;top:73px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;box-shadow:0 15px 35px rgba(55,38,34,.12);flex-direction:column;align-items:stretch;gap:3px}.nav.open{display:flex}.nav a{padding:10px}.hero-grid,.split,.process-grid,.levels-grid,.faq-grid{grid-template-columns:1fr}.hero-image{height:420px}.hero-panel{grid-column:auto}.quick-grid{grid-template-columns:1fr 1fr}.services-grid{grid-template-columns:1fr}.image-frame img{height:340px}.cta-box{grid-template-columns:1fr}.cta-actions{align-items:flex-start}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.integrity .container{display:block}.form-row{grid-template-columns:1fr}.level-list>div{grid-template-columns:1fr;gap:3px}}
@media(max-width:500px){.brand-copy{display:none}.brand-logo{width:165px}.hero{padding-top:44px}.hero h1{font-size:38px}.hero-image{height:320px}.quick-grid{grid-template-columns:1fr}.quick-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.cta-box{padding:28px}.cta-box h2{font-size:29px}.floating-wa strong{display:none}.floating-wa{padding-right:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal,.stagger>*{opacity:1!important;transform:none!important}}


/* Typewriter hero headline */
.typewriter-headline{
  min-height:3.18em;
}
.typewriter-text{
  display:inline;
}
.typewriter-cursor{
  display:inline-block;
  width:3px;
  height:.92em;
  margin-left:6px;
  vertical-align:-.05em;
  background:var(--coffee);
  border-radius:2px;
  animation:typeCursorBlink .78s steps(1,end) infinite;
}
.typewriter-headline.typewriter-complete .typewriter-cursor{
  animation:typeCursorBlink 1.05s steps(1,end) infinite;
}
@keyframes typeCursorBlink{
  0%,48%{opacity:1}
  49%,100%{opacity:0}
}
@media(max-width:780px){
  .typewriter-headline{min-height:3.45em}
}
@media(max-width:500px){
  .typewriter-headline{min-height:4.35em}
}
@media(prefers-reduced-motion:reduce){
  .typewriter-headline{min-height:auto}
  .typewriter-cursor{display:none!important}
}
