.hero{padding-top:130px;position:relative}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;grid-gap:clamp(32px,5vw,72px);gap:clamp(32px,5vw,72px);align-items:center}.hero h1{font-family:var(--display);font-weight:500;font-size:clamp(2.9rem,7.2vw,6rem);line-height:.96;letter-spacing:-.02em;margin-top:26px;text-wrap:balance}.hero h1 em{font-style:italic;font-family:var(--accent);font-weight:600;color:var(--sage)}.hero .lead{margin-top:26px;max-width:26em}.hero .cta-row,.hero-trust{margin-top:36px}.hero-trust{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.hero-trust .stars{color:var(--sage);letter-spacing:2px;font-size:.95rem}.hero-trust .t{font-size:.86rem;color:var(--ink-soft);line-height:1.4}.hero-trust strong{color:var(--ink);font-weight:600}.hero-visual{position:relative}.hero-photo{aspect-ratio:4/5;border-radius:240px 240px 6px 6px}.about-teaser-photo{aspect-ratio:4/5;border-radius:6px 6px 240px 240px}.hero-badge{position:absolute;left:-22px;bottom:42px;background:var(--paper-warm);box-shadow:var(--shadow-soft);padding:18px 24px;border-radius:4px;max-width:220px}.hero-badge .display{font-size:1.7rem;color:var(--sage);line-height:1}.hero-badge .t{font-size:.72rem;letter-spacing:.16em;color:var(--ink-soft);margin-top:6px}.hero-badge .t,.hero-tag{text-transform:uppercase;font-weight:600}.hero-tag{position:absolute;right:-10px;top:36px;background:var(--ink);color:var(--paper-warm);font-size:.66rem;letter-spacing:.2em;padding:10px 16px;border-radius:2px}.strip{border-block:1px solid var(--line);background:var(--cream);overflow:hidden;padding-block:18px}.strip-track{display:flex;gap:56px;white-space:nowrap;animation:marquee 32s linear infinite;width:max-content}.strip-track span{font-family:var(--display);font-style:italic;font-size:1.15rem;color:var(--sage);display:inline-flex;align-items:center;gap:56px}.strip-track span:after{content:"✦";font-style:normal;font-size:.7rem;opacity:.6}@keyframes marquee{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.strip-track{animation:none}}.trust-strip{border-block:1px solid var(--line);background:var(--cream);padding-block:16px}.trust-track{display:flex;align-items:center;justify-content:center;gap:clamp(20px,4vw,56px);flex-wrap:wrap}.trust-item{display:inline-flex;align-items:center;gap:10px;font-size:.82rem;font-weight:600;letter-spacing:.04em;color:var(--sage-deep)}.trust-item svg{width:18px;height:18px;color:var(--sage);flex:none}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:clamp(20px,2.2vw,32px);gap:clamp(20px,2.2vw,32px)}.svc-card{background:var(--paper-warm);border:1px solid var(--line-soft);border-radius:14px;padding:16px 16px 4px;display:flex;flex-direction:column;transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s var(--ease)}.svc-photo{aspect-ratio:4/5;border-radius:50% 50% 10px 10px/26% 26% 5px 5px;overflow:hidden;position:relative}.svc-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(76,58,46,0) 55%,rgba(76,58,46,.28));opacity:0;transition:opacity .5s var(--ease)}.svc-photo .photo-fill{transition:transform .7s var(--ease)}.svc-body{padding:22px 12px;display:flex;flex-direction:column;flex:1 1}.svc-num{font-family:var(--body);font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--sage);display:inline-flex;align-items:center;gap:10px}.svc-num:before{content:"";width:22px;height:1px;background:var(--sage);display:inline-block}.svc-card h3{font-family:var(--display);font-size:1.65rem;margin:12px 0 10px;line-height:1.08}.svc-card h3 a{transition:color .3s var(--ease)}.svc-card p{font-size:.95rem;color:var(--ink-soft)}.tag{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--sage-deep);background:var(--cream);padding:6px 12px;border-radius:999px;align-self:flex-start;margin-top:16px}.svc-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px}.svc-price{font-family:var(--display);font-size:1.3rem;line-height:1.1;color:var(--sage-deep)}.svc-price small{font-family:var(--body);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);display:block;font-weight:600;margin-top:4px}.svc-note{margin-top:clamp(24px,3vw,36px);font-size:.92rem;color:var(--ink-soft);text-align:center}.svc-note a{color:var(--sage-deep);font-weight:600;border-bottom:1px solid var(--sage-pale);padding-bottom:2px}.tc{position:relative}.tc-track{display:flex;gap:24px;transition:transform .7s var(--ease);touch-action:pan-y}.tc-slide{flex-grow:0;flex-shrink:0;flex-basis:calc((100% - 48px) / 3)}@media (max-width:980px){.tc-slide{flex-grow:0;flex-shrink:0;flex-basis:calc((100% - 24px) / 2)}}@media (max-width:640px){.tc-slide{flex:0 0 100%}}.quote{background:var(--paper-warm);border:1px solid var(--line-soft);border-radius:4px;padding:32px 30px;height:100%;display:flex;flex-direction:column}.quote .mark{font-family:var(--display);font-size:3rem;line-height:.5;color:var(--sage-pale);height:28px}.quote p{font-size:.98rem;color:var(--ink);line-height:1.6;flex:1 1}.quote .who{display:flex;align-items:center;gap:14px;margin-top:24px}.avatar{width:46px;height:46px;border-radius:50%;background:var(--sage);color:var(--paper-warm);display:grid;place-items:center;font-family:var(--display);font-size:1.05rem;flex:none}.quote .who .nm{font-weight:600;font-size:.95rem;line-height:1.2;display:block}.quote .who .sv{font-size:.78rem;color:var(--sage);letter-spacing:.04em;display:block;margin-top:2px}.tc-controls{display:flex;align-items:center;justify-content:space-between;margin-top:36px}.tc-dots{display:flex;gap:0}.tc-dot{min-width:20px;height:44px;padding:0 6px;border:none;background:none;display:grid;place-items:center}.tc-dot:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sage-pale);transition:width .3s var(--ease),background .3s var(--ease),border-radius .3s var(--ease)}.tc-dot.active:before{background:var(--sage);width:26px;border-radius:999px}.tc-arrows{display:flex;gap:10px}.tc-arrow{width:50px;height:50px;border-radius:50%;border:1px solid var(--line);background:transparent;display:grid;place-items:center;transition:all .3s var(--ease)}.tc-arrow svg{width:18px;height:18px}.timeline{display:flex;align-items:center;justify-content:space-between;gap:clamp(10px,2vw,28px);flex-wrap:wrap}.tl-step{display:inline-flex;align-items:center;gap:12px;flex:1 1 auto}.tl-step+.tl-step:before{content:"";width:clamp(16px,3vw,56px);height:1px;background:hsla(31,24%,74%,.35);flex:none;margin-right:clamp(10px,2vw,28px)}.tl-step .n{font-size:clamp(1.9rem,4vw,2.8rem);line-height:1;color:var(--sage-pale);flex:none}.tl-step .l,.tl-step .n{font-family:var(--display)}.tl-step .l{font-size:clamp(1.1rem,2vw,1.45rem);color:var(--paper-warm);line-height:1.1}.bg-ink .eyebrow{color:var(--sage-pale)}.bg-ink .eyebrow:before{background:var(--sage-pale)}.bg-ink .h-sec{color:var(--paper-warm)}.bg-ink .lead{color:hsla(31,24%,74%,.78)}.bg-ink .link-arrow{color:var(--cream);border-color:hsla(31,24%,74%,.35)}.res-band{background:var(--paper-warm);border:1px solid var(--line-soft);border-radius:10px;overflow:hidden;display:grid;grid-template-columns:320px 1fr;align-items:stretch}.rb-photo{min-height:100%}.rb-body{padding:clamp(26px,3.4vw,44px);display:flex;flex-direction:column;justify-content:center}.rb-title{font-family:var(--display);font-weight:500;font-size:clamp(1.6rem,3.2vw,2.3rem);line-height:1.06;letter-spacing:-.01em;margin:12px 0;text-wrap:balance}.rb-body>p{font-size:.98rem;color:var(--ink-soft);max-width:46ch}.rb-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:26px;flex-wrap:wrap}.rb-price{font-family:var(--display);font-size:1.35rem;line-height:1.1;color:var(--sage-deep)}.rb-price small{font-family:var(--body);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);display:block;font-weight:600;margin-top:4px}.cta-band{background:var(--sage);border-radius:6px;padding:clamp(40px,6vw,72px);text-align:center}.cta-band,.cta-band .h-sec{color:var(--paper-warm)}.cta-band .lead{color:hsla(43,30%,95%,.85);max-width:36em;margin-inline:auto}.cta-band .btn-primary{background:var(--paper-warm);color:var(--ink);border-color:var(--paper-warm)}.cta-band .btn-primary:hover{background:var(--ink);color:var(--paper-warm);border-color:var(--ink)}.cta-band .btn-outline{color:var(--paper-warm);border-color:hsla(43,30%,95%,.5)}.cta-band .btn-outline:hover{background:var(--paper-warm);color:var(--sage-deep);border-color:var(--paper-warm)}.cta-alt,.cta-band .cta-row{justify-content:center}.cta-alt{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:26px;font-size:.86rem;color:hsla(43,30%,95%,.75)}.cta-alt a{border-bottom:1px solid hsla(43,30%,95%,.4);padding-bottom:2px}.cta-alt span{opacity:.5}@media (max-width:900px){.strip{display:none}.hero-grid{grid-template-columns:1fr}.hero-visual{order:-1;width:100%;max-width:460px;margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.about-teaser-photo,.hero-photo{aspect-ratio:4/5;max-height:520px;flex:1 1 100%}.svc-grid{grid-template-columns:1fr;max-width:460px;margin-inline:auto}.svc-photo{aspect-ratio:4/5}.res-band{grid-template-columns:1fr;max-width:460px;margin-inline:auto}.rb-photo{aspect-ratio:4/5;min-height:0}.hero-badge,.hero-tag{position:static;max-width:none}.hero-badge{display:inline-flex;align-items:center;gap:12px;padding:10px 16px}.hero-badge .display{font-size:1.25rem}.hero-badge .t{margin-top:0}}@media (max-width:540px){.timeline{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px 14px;gap:18px 14px}.tl-step+.tl-step:before{display:none}}@media (hover:hover) and (pointer:fine){.svc-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.svc-card:hover .svc-photo:after{opacity:1}.svc-card:hover .svc-photo .photo-fill{transform:scale(1.04)}.svc-card h3 a:hover{color:var(--sage)}.svc-note a:hover{border-color:var(--sage)}.res-band:hover{box-shadow:var(--shadow-soft)}.tc-arrow:hover{background:var(--ink);border-color:var(--ink);color:var(--paper-warm)}.cta-alt a:hover{border-color:var(--paper-warm);color:var(--paper-warm)}}