/* SMP MAKI · refinement 02. Hair flow, fine points, and a connected consultation. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.maki-icon{display:inline-block;width:28px;height:28px;flex:0 0 28px;vertical-align:middle;overflow:visible;pointer-events:none}
.btn .maki-icon{width:27px;height:27px;transition:transform .4s}
.btn:hover .maki-icon{transform:translate(2px,-2px)}
.text-link .maki-icon,.header-contact .maki-icon{width:20px;height:20px;flex-basis:20px}
.header-contact{display:inline-flex;align-items:center;gap:16px}
.sound-toggle>.maki-icon{width:19px;height:19px;flex-basis:19px}
.btn{border-radius:3px 3px 11px 3px}
.btn:focus-visible{outline-offset:7px}
.btn.consult-pressed{animation:consult-press .58s var(--ease-press)}
.pressed .maki-icon{animation:point-response .5s ease-out}
.tap-ring{position:absolute;width:16px;height:16px;border:1px solid #ddc58a;border-radius:50%;pointer-events:none;animation:consult-ring .8s ease-out forwards}
.hero{height:auto;min-height:min(920px,100svh);max-height:none;padding:clamp(140px,16svh,185px) 0 145px}
.hero-copy{position:relative;padding-top:0;bottom:auto;margin-left:47%;width:51%;padding-right:4vw;z-index:2}
.hero-copy .eyebrow{margin-bottom:15px}
.hero-service{margin-top:0;font-size:23px}
.hero h1{font-size:clamp(54px,6.15vw,92px);line-height:1.5;letter-spacing:.065em;margin:19px 0 25px}
.hero-line{animation:headline-unfold 1.1s cubic-bezier(.16,.85,.22,1) both}
.hero-line:nth-child(2){animation-delay:.14s}
.hero-description{font-size:16px;line-height:2}
.hero-description>span{font-size:13px;color:#dbdfd1;display:inline-block;margin-top:7px}
.hero-photo{animation:portrait-arrive 1.8s var(--ease) both}
.hero-cta{flex-direction:row;align-items:center;gap:24px;margin-top:27px}
.hero-filaments{position:absolute;right:-7%;bottom:-70px;width:76%;height:480px;pointer-events:none;color:#e1c78d;opacity:.23;z-index:1;mask-image:linear-gradient(0deg,#000,#0009 60%,transparent)}
.hairflow-art{display:block;width:100%;height:100%;overflow:visible}
.hairflow-art path{stroke-dasharray:1;stroke-dashoffset:0}
.hero-filaments path{animation:strand-draw 1.8s ease-out both;animation-delay:calc(.2s + var(--strand)*.035s)}
.hero-filaments circle{animation:point-appear 1.5s ease-out both;animation-delay:calc(.7s + var(--strand)*.025s)}
.hero-bottom{z-index:3;bottom:28px}
.hero-detail{display:flex;gap:17px;align-items:center;font-size:12px;line-height:1.6}
.hero-detail small{display:block;font-size:10px;color:#d7ddcb;margin-top:6px}
.precision-mark{width:50px;height:50px;border:1px solid #c5b77f70;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#e4cf9b16,#11332c00)}
.precision-mark .maki-icon{width:35px;height:35px}
.hero-bottom>span:nth-child(2){bottom:85px}
.intro{padding-top:85px;padding-bottom:75px;align-items:center}
.intro-copy{padding-top:0}
.intro-sign{height:110px;width:300px;max-width:85%;color:#a28b51;margin-top:30px;overflow:hidden;opacity:.8}
.intro-heading.is-visible .intro-sign path{animation:strand-draw 1.6s ease both;animation-delay:calc(var(--strand)*.025s)}
.reading-details{margin-top:25px;border-top:1px solid #9fac9159;border-bottom:1px solid #9fac9159}
.reading-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:54px;padding:13px 0;font-size:14px;line-height:1.7}
summary::-webkit-details-marker{display:none}
.reading-details summary .maki-icon{width:19px;height:19px;flex-basis:19px;transition:transform .3s}
.reading-details[open]>summary .maki-icon{transform:rotate(45deg)}
.reading-details>p,.reading-details>div{padding:0 0 22px;font-size:15px;line-height:1.95;animation:answer .35s var(--ease)}
.reading-details h4{font-family:var(--serif);font-size:18px;font-weight:500;line-height:1.7;margin:8px 0}
.area-section{position:relative;background:radial-gradient(ellipse at 20% 30%,#69806233,transparent 60%),linear-gradient(125deg,#193e32,#102f29)}
.area-section:before,.mechanism:before{content:'';position:absolute;width:350px;height:500px;right:-180px;top:0;border:1px solid #c1b77b24;outline:1px solid #c1b77b15;outline-offset:30px;border-radius:50%;transform:rotate(35deg);pointer-events:none}
.area-tab[aria-selected=true]{box-shadow:inset 0 1px 0 #fff4,0 4px 0 #0b261b80}
.area-panel{padding-top:32px;gap:5vw}
.area-story h3{margin-bottom:18px}
.area-story .photo-tip{margin:23px 0 12px}
.area-story .text-link{margin-top:4px}
.area-drawing .hair-contours path{stroke-dasharray:400;animation:hair-reveal 1.1s ease-out both}
.mechanism{position:relative;overflow:hidden;border-top:1px solid #bac59a35;background:radial-gradient(ellipse at 90% 45%,#73815a4a,transparent 60%),linear-gradient(125deg,#173d32,#244c3e)}
.mechanism-copy .mechanism-caption{margin-top:24px!important}
.mechanism-copy>p.note{font-size:12px;margin-top:24px;color:#bfccb6;line-height:1.9;max-width:440px}
.studio-related{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:25px}
.studio-related .text-link{font-size:13px;color:#e2d1a0}
.precision-studio{border-radius:3px 3px 40px 3px;box-shadow:0 25px 70px #071f2645;padding:26px 30px 30px}
.precision-studio:before{border-radius:2px 2px 35px 2px}
.studio-area-switches{display:flex;gap:6px;padding-bottom:24px;position:relative;z-index:1}
.studio-area-switch{flex:1;min-height:44px;border:1px solid #c9c79855;color:#e7ebd8;background:linear-gradient(115deg,#ffffff06,#ffffff02);font-size:13px;border-radius:2px}
.studio-area-switch[aria-pressed=true]{background:linear-gradient(110deg,#d9ca9c,#bfac79);color:#163b2f;box-shadow:0 3px 0 #0b291d}
.studio-canvas .scalp-illustration{height:280px}
.studio-area{animation:area-in .55s var(--ease)}
.studio-canvas .area-focus{stroke-width:9;opacity:.38}
.studio-heading{min-height:26px}
.studio-status{min-height:100px;margin-top:5px;margin-bottom:16px}
.studio-status h3{font-size:24px;line-height:1.55}
.studio-status p{font-size:14px;line-height:1.85;margin-top:10px}
.studio-next{display:flex;width:max-content;margin:20px auto 0;color:#e4d09b;font-size:13px;max-width:100%}
.practitioner-points{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid #9fac9159}
.practitioner-points li{padding:13px 0;display:flex;gap:23px;align-items:center;border-bottom:1px solid #9fac9159;font-size:14px;line-height:1.8}
.practitioner-points li>span{color:#8c794c;font-size:12px;white-space:nowrap}
.story-copy .reading-details{margin-top:0;border-top:0}
.story-copy .reading-details>p{font-size:14px}
.story-copy .lead{font-size:23px;margin-top:23px}
.story-copy .signature{margin:25px 0;border-top:0;padding-top:0}
.promises{display:grid;grid-template-columns:repeat(3,1fr);gap:5vw;padding-top:0;padding-bottom:75px;background:radial-gradient(ellipse at 0 90%,#c7d4bc22,transparent 65%)}
.promise-scene{border-top:1px solid #a5b194;padding-top:20px}
.promise-drawing{position:relative;height:125px;display:grid;place-items:center;overflow:hidden;color:#587454}
.promise-drawing:before{content:'';position:absolute;width:180px;height:95px;top:16px;border:1px solid #b5a47177;border-radius:50%;transform:rotate(-28deg);box-shadow:0 0 0 16px #b5a47106}
.promise-drawing>span{position:absolute;left:0;top:0;color:#9b8555;font:14px Georgia,serif}
.promise-drawing>.maki-icon{width:68px;height:68px;stroke-width:.65;position:relative;background:radial-gradient(ellipse,#f5f2e9 15%,#f5f2e900 70%)}
.promise-scene.is-visible .promise-drawing:before{animation:promise-orbit 1.2s var(--ease) both}
.promise-scene h3{font-size:34px;margin:8px 0 12px}
.promise-scene>p{font-size:15px;line-height:1.9}
.promise-scene .reading-details{margin-top:24px}
.promise-scene .reading-details>div p{font-size:14px}
.voices-teaser{position:relative;overflow:hidden}
.voices-teaser:before{content:'';position:absolute;width:350px;height:350px;top:30px;right:-220px;border:1px solid #bca76f55;border-radius:50%;box-shadow:0 0 0 35px #bca76f08;pointer-events:none}
.check-section{align-items:start}
.check-intro{position:sticky;top:115px;align-self:start}
.check-result{padding-bottom:14px}
.result-actions{gap:12px;margin:6px 0 25px;align-items:stretch}
.result-actions>.btn{font-size:13px;padding:14px 20px;gap:17px;min-height:52px}
.result-actions>.reset-check{font-size:12px}
.advice-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 12px;font-family:var(--serif);font-size:19px}
.advice-heading>small{font-family:var(--sans);font-size:11px;color:#61745a}
.personal-advice{display:block;border-top:1px solid #b7c0a4;margin-bottom:18px}
.advice-row{padding:0 16px;border-left:0;border-bottom:1px solid #b7c0a4;background:linear-gradient(110deg,#f8f5eab3,#e8eadbb3);animation:answer .3s ease-out}
.advice-row>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:59px;padding:13px 0;cursor:pointer;list-style:none}
.advice-row>summary h4{font-size:16px;line-height:1.8;margin:0}
.advice-row .maki-icon{width:18px;height:18px;flex-basis:18px}
.advice-row[open]>summary .maki-icon{transform:rotate(45deg)}
.advice-row>div{padding-bottom:18px;animation:answer .3s ease-out}
.advice-row>div p{font-size:14px}
.advice-row .text-link{font-size:13px}
.consultation-note{padding:0 18px;margin:18px 0 0;border:1px solid #b9c0aa;border-radius:2px}
.consultation-note>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:60px;padding:13px 0;list-style:none;font-size:14px}
.consultation-note>summary .maki-icon{width:19px;height:19px;flex-basis:19px}
.consultation-note[open]>summary .maki-icon{transform:rotate(45deg)}
.consultation-note .note{margin-bottom:18px}
.check-mark .maki-icon{width:18px;height:18px;flex-basis:18px}
.completion-emblem svg{width:180px}
.complete .completion-emblem{height:90px}
.flow-list li{padding-bottom:16px}
.flow-list li:before{top:72px}
.flow-step{border-bottom:1px solid #aab99b70}
.flow-step>summary{display:flex;gap:17px;justify-content:space-between;align-items:center;min-height:60px;padding:8px 0 15px;list-style:none;cursor:pointer;font-family:var(--serif);font-size:22px;line-height:1.7}
.flow-step>summary .maki-icon{width:18px;height:18px;flex-basis:18px}
.flow-step[open]>summary .maki-icon{transform:rotate(45deg)}
.flow-step>p{padding:0 0 22px;animation:answer .3s ease-out}
.photo-guide{padding-top:70px;padding-bottom:70px}
.photo-examples{gap:70px;margin-top:32px}
.photo-example svg{height:205px}
.photo-example p{margin-top:13px}
.voice-intro{margin-bottom:30px}
.voice-filters{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid #a9b699;padding-top:25px}
.voice-filter{border:1px solid #b7c0a7;background:linear-gradient(120deg,#f8f6eb,#e8eadc);min-height:46px;padding:10px 20px;font-size:14px;border-radius:2px;box-shadow:0 3px 0 #bcc6ad44}
.voice-filter[aria-pressed=true]{color:#f6f1df;background:linear-gradient(120deg,#45634a,#183d32);border-color:#355744}
#voice-count{font-size:13px;color:#6c7e5f;margin:20px 0 30px}
.voice-grid{gap:32px 45px;align-items:start}
.voice-card{padding:20px 0 25px;background:radial-gradient(ellipse at 10% 20%,#d1d6bd33,transparent 60%)}
.voice-card:nth-child(even){margin-top:0}
.voice-card-top{margin-bottom:20px;font-size:12px}
.voice-content{display:grid;grid-template-columns:95px 1fr;gap:20px;align-items:start}
.voice-drawing{height:110px;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid #bfa96c70;color:#65805b}
.voice-drawing>.maki-icon{width:64px;height:64px;stroke-width:.75}
.voice-drawing .scalp-illustration{height:110px;width:120px;max-width:none;opacity:.85}
.voice-drawing .area-focus{animation:none}
.voice-drawing .scalp-illustration text{display:none}
.voice-card h3{font-size:23px;line-height:1.8;padding:0;margin:0 0 16px}
.voice-card .voice-excerpt{font-family:var(--serif);font-size:18px;line-height:2;padding:0;margin:0;color:#4b6247}
.voice-full{margin-top:24px}
.voice-full summary{font-size:13px}
.voice-full>blockquote{padding:5px 0 20px;font-size:16px;line-height:2;animation:answer .35s ease-out}
.voice-source{margin:18px 0 0;font-size:11px}
.voice-card.filter-arrived{animation:area-in .5s var(--ease)}
.faq-shortcuts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.faq-shortcuts a{display:flex;align-items:center;gap:17px;min-height:90px;border-top:1px solid #acb99c;border-bottom:1px solid #acb99c;background:linear-gradient(135deg,#e4e6d7,#f5f1e5);padding:15px 20px;font-family:var(--serif);font-size:20px}
.faq-shortcuts a>span{color:#a18b51}
.faq-shortcuts a>.maki-icon{width:20px;height:20px;flex-basis:20px;margin-left:auto}
.all-faq details[open]{background:linear-gradient(120deg,#e7e9db99,transparent)}
.faq-answer{padding-top:5px}
.closing-contours i{animation:closing-lines 2s ease-out 1}
.closing h2{line-height:1.7}
.section .reveal{transition-duration:.85s}
@keyframes headline-unfold{from{opacity:.45;transform:translateY(30px);clip-path:inset(0 0 95% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes portrait-arrive{from{transform:scale(1.065);opacity:.68}to{transform:scale(1);opacity:1}}
@keyframes strand-draw{from{stroke-dashoffset:1;opacity:.3}to{stroke-dashoffset:0;opacity:1}}
@keyframes point-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes hair-reveal{from{stroke-dashoffset:400;opacity:.1}to{stroke-dashoffset:0;opacity:1}}
@keyframes promise-orbit{from{transform:rotate(-70deg) scale(.7);opacity:.1}to{transform:rotate(-28deg) scale(1);opacity:1}}
@keyframes consult-press{0%{transform:none}30%{transform:translateY(4px) scale(.975);box-shadow:inset 0 4px 10px #09261f44}70%{transform:translateY(-2px) scale(1.012);box-shadow:0 0 0 8px #c8b37e15,0 8px 25px #c8b37e22}100%{transform:none}}
@keyframes consult-ring{from{transform:translate(-50%,-50%) scale(.4);opacity:.8}to{transform:translate(-50%,-50%) scale(9);opacity:0}}
@keyframes point-response{0%{opacity:1}40%{opacity:.45;transform:scale(.88)}80%{opacity:1;transform:scale(1.08)}100%{transform:none}}
@keyframes closing-lines{from{opacity:.3;translate:0 25px}to{opacity:1;translate:0 0}}
@media(max-width:1180px){.hero-cta{flex-direction:column;align-items:flex-start;gap:12px}.hero-copy{margin-left:45%;width:55%}.hero h1{font-size:6.4vw}.hero-service{font-size:21px}.hero-description>span{font-size:12px}.voice-content{grid-template-columns:70px 1fr;gap:15px}.voice-drawing{height:90px}.voice-drawing .scalp-illustration{height:90px;width:100px}.faq-shortcuts a{font-size:17px;padding:15px;gap:10px}.promises{gap:30px}.promise-scene h3{font-size:30px}}
@media(max-width:850px){.hero{padding-top:145px;padding-bottom:120px;min-height:85svh}.hero-copy{margin-left:43%;width:57%}.hero-service{font-size:19px}.hero-description{font-size:14px}.hero-description>span{font-size:11px}.hero-cta .btn{font-size:12px;gap:14px;padding:15px 18px}.hero-detail{font-size:10px}.hero-detail small{font-size:9px}.hero-bottom>span:nth-child(2){font-size:12px}.intro{padding-top:65px;padding-bottom:65px}.intro-sign{display:none}.intro-copy{padding-top:25px}.check-intro{position:relative;top:auto}.practitioner-points li{flex-direction:column;align-items:flex-start;gap:4px}.promises{gap:20px}.promise-scene h3{font-size:27px}.promise-scene>p{font-size:14px}.promise-scene .reading-details summary{font-size:12px}.voice-content{display:block}.voice-drawing{width:90px;float:left;margin-right:18px;margin-bottom:12px}.voice-card h3{font-size:22px}.voice-card .voice-excerpt{font-size:17px}.voice-full{clear:both}.faq-shortcuts{gap:10px}.faq-shortcuts a{font-size:15px;gap:8px}.faq-shortcuts a>span .maki-icon{width:24px;height:24px}.studio-related{gap:4px}.precision-studio{padding:22px}.studio-status h3{font-size:22px}}
@media(max-width:650px){
 .hero{height:auto;max-height:none;min-height:calc(100svh - 58px - env(safe-area-inset-bottom));padding:max(235px,29svh) 0 46px}
 .hero-copy{position:relative;inset:auto;width:100%;margin:0;padding:0 25px}
 .hero-photo{object-position:30% 35%}
 .hero-shade{background:linear-gradient(0deg,#0d3028f5 0%,#10362ce8 26%,#183e2d75 64%,#19382800 83%,#122d2855)}
 .hero-copy .eyebrow{font-size:10px;line-height:1.8;margin-bottom:10px}
 .hero-service{font-size:17px;margin:0 0 9px}
 .hero h1{font-size:clamp(36px,10.5vw,55px);line-height:1.45;margin:10px 0 18px;letter-spacing:.06em}
 .hero-description{font-size:15px;line-height:1.85}
 .hero-description>span{font-size:11px;margin-top:6px;line-height:1.9}
 .hero-cta{margin-top:22px;display:flex;align-items:stretch;gap:0}
 .hero-cta .btn{font-size:14px;min-height:56px;padding:15px 20px}
 .hero-bottom{display:none}
 .hero-filaments{bottom:-75px;right:-35%;width:135%;height:370px;opacity:.22}
 .first-look{padding:20px 25px;gap:7px;font-size:12px}
 .intro{padding:58px 24px}.intro-heading h2{font-size:31px}.intro-copy .lead{font-size:22px}
 .reading-details summary{font-size:14px;min-height:56px}.reading-details>p,.reading-details>div{font-size:16px;line-height:1.95}
 .area-section .section-head{margin-bottom:26px}.area-panel{padding-top:20px;gap:20px}.area-drawing .scalp-illustration{max-height:265px}.area-story h3{font-size:26px}.area-story>p{font-size:16px}.area-story .photo-tip{margin:20px 0 10px}.area-section>.diagram-disclaimer{margin-top:25px}
 .mechanism{padding:55px 24px;gap:28px}.mechanism-copy h2{font-size:31px}.mechanism-copy>p:not(.eyebrow){margin-top:22px}.mechanism-copy .mechanism-caption{font-size:22px!important}.mechanism-copy>p.note{font-size:12px;margin-top:20px}.studio-related{margin-top:20px;gap:4px}.studio-related .text-link{font-size:13px}.precision-studio{padding:21px 20px 25px;border-bottom-right-radius:30px}.precision-studio:before{border-bottom-right-radius:25px}.studio-area-switches{padding-bottom:22px}.studio-area-switch{font-size:13px;min-height:44px}.studio-canvas .scalp-illustration{height:245px}.studio-status{min-height:103px;margin:5px 0 17px}.studio-status h3{font-size:22px}.studio-status p{font-size:14px}.studio-next{font-size:13px;margin-top:20px}
 .story{padding-top:65px;gap:30px}.story-copy h2{font-size:30px}.story-copy .lead{font-size:22px}.practitioner-points li{flex-direction:row;align-items:center;gap:15px;font-size:14px;padding:15px 0}.practitioner-points li>span{font-size:11px}.story-copy .reading-details>p{font-size:15px}.story-copy .signature{gap:6px;margin:25px 0}.story-copy .btn{font-size:14px}
 .promises{display:block;padding:0 24px 55px}.promise-scene{padding:22px 0 28px;display:grid;grid-template-columns:82px 1fr;column-gap:22px;align-items:center}.promise-drawing{grid-column:1;grid-row:1/3;height:105px;overflow:visible}.promise-drawing:before{width:78px;height:70px;top:20px}.promise-drawing>span{font-size:11px;top:-2px}.promise-drawing>.maki-icon{width:50px;height:50px}.promise-scene h3{grid-column:2;font-size:28px;margin:0 0 10px}.promise-scene>p{grid-column:2;font-size:15px;margin:0}.promise-scene .reading-details{grid-column:1/-1;margin-top:20px}.promise-scene .reading-details summary{font-size:14px}.promise-scene .reading-details>div p{font-size:15px}
 .check-intro{position:relative;top:auto}.check-result h3{font-size:22px}.check-result p:last-child{font-size:14px}.result-actions{margin:5px 0 21px;gap:10px}.result-actions>.btn{font-size:14px;min-height:54px}.result-actions>.reset-check{font-size:12px;min-height:40px}.advice-heading{font-size:18px;margin-top:20px;align-items:flex-start;flex-direction:column;gap:3px}.advice-heading>small{font-size:12px}.advice-row{padding:0 13px}.advice-row>summary{min-height:60px;padding:12px 0}.advice-row>summary h4{font-size:15px}.advice-row>div p{font-size:15px}.advice-row .text-link{font-size:13px}.consultation-note{padding:0 15px}.consultation-note>summary{font-size:14px;min-height:57px}.consultation-note textarea{font-size:16px;min-height:180px}.completion-emblem svg{width:150px;height:65px}.complete .completion-emblem{height:75px}
 .flow-list li{grid-template-columns:45px 1fr;gap:17px;padding-bottom:17px}.flow-step>summary{font-size:20px;min-height:52px;padding-top:0;padding-bottom:13px}.flow-step>p{font-size:15px;padding-bottom:18px}.flow-list li:before{top:55px}.photo-guide{padding-top:58px;padding-bottom:58px}.photo-guide-heading h2{font-size:29px}.photo-examples{gap:20px;margin-top:30px}.photo-example{display:grid;grid-template-columns:105px 1fr;column-gap:17px;text-align:left;padding:18px 0 22px;align-items:start}.photo-example svg{grid-column:1;grid-row:1/4;width:120px;height:175px;max-width:none;margin:-6px 0 0 -10px}.photo-example>span{grid-column:2;font-size:11px}.photo-example h3{grid-column:2;font-size:20px;line-height:1.65;margin-top:10px}.photo-example p{grid-column:2;font-size:14px;line-height:1.9;margin-top:12px}.photo-guide-bottom{margin-top:8px}.photo-guide-bottom p{font-size:14px}.photo-guide-bottom .btn{font-size:14px}
 .voice-intro{margin-bottom:25px}.voice-filters{gap:8px;padding-top:20px}.voice-filter{font-size:13px;padding:9px 13px;min-height:44px}#voice-count{margin:18px 0 25px;font-size:12px}.voice-grid{gap:24px}.voice-card{padding:20px 0 25px}.voice-card-top{margin-bottom:18px;font-size:11px}.voice-content{display:grid;grid-template-columns:65px 1fr;gap:17px}.voice-drawing{float:none;width:65px;height:95px;margin:0}.voice-drawing .scalp-illustration{height:95px;width:100px}.voice-drawing>.maki-icon{width:50px;height:50px}.voice-card h3{font-size:22px;line-height:1.75;padding:0;margin-bottom:13px}.voice-card .voice-excerpt{font-size:17px;line-height:1.9;padding:0}.voice-full{margin-top:20px}.voice-full summary{font-size:13px}.voice-full>blockquote{font-size:16px;line-height:2;padding:0 0 20px}.voice-source{margin:16px 0 0}.voice-next>p{font-size:21px}
 .faq-shortcuts{gap:8px;margin-bottom:32px}.faq-shortcuts a{flex-direction:column;align-items:flex-start;gap:8px;padding:13px 10px;min-height:105px;font-size:14px}.faq-shortcuts a>.maki-icon{display:none}.faq-shortcuts a>span .maki-icon{width:28px;height:28px}.faq-tools h2{font-size:28px}
 .subhero{min-height:0}.subhero-copy{padding:145px 25px 80px}.subhero-copy h1{font-size:37px}.subhero-copy>p:last-child{font-size:15px}.closing{min-height:0;padding:60px 24px}.closing h2{font-size:32px}.closing p:not(.eyebrow){font-size:15px}.mobile-contact a{min-height:58px;font-size:12px;gap:10px}.mobile-contact .maki-icon{width:21px;height:21px;flex-basis:21px}
}
@media(max-width:650px) and (max-height:700px){.hero{padding-top:195px;padding-bottom:30px}.hero h1{font-size:36px;line-height:1.4;margin:8px 0 14px}.hero-service{font-size:16px;margin-bottom:7px}.hero-copy .eyebrow{font-size:9px;margin-bottom:7px}.hero-description{font-size:14px;line-height:1.8}.hero-description>span{font-size:10px;margin-top:4px}.hero-cta{margin-top:17px}.hero-cta .btn{min-height:52px;font-size:13px}.hero-photo{object-position:30% 30%}}
@media(max-width:370px){.hero-copy{padding:0 22px}.hero h1{font-size:36px}.hero-description>span{font-size:10px}.hero-cta .btn{font-size:13px}.brand small{font-size:7px}.header-actions .icon-btn{min-width:34px}.practitioner-points li{gap:11px;font-size:13px}.studio-area-switch{font-size:12px}.voice-content{grid-template-columns:50px 1fr;gap:14px}.voice-drawing{width:50px}.voice-card h3{font-size:21px}.photo-example{grid-template-columns:85px 1fr;gap:12px}.photo-example svg{width:100px;margin-left:-8px}.photo-example h3{font-size:19px}.faq-shortcuts a{font-size:12px}.mobile-contact a{font-size:11px}}
@media(min-width:1600px){.hero-copy{padding-top:0}.hero h1{font-size:95px}}
body.reduce-motion .hairflow-art path{stroke-dashoffset:0!important}
body.reduce-motion .hairflow-art circle,body.reduce-motion .hero-photo{opacity:1;transform:none}

/* Refinement 03: a clear next step, from the first view to a finished memo. */
.btn{max-width:100%;gap:18px}
.btn>.btn-label,.btn:hover>.btn-label{font-size:inherit;line-height:1.6;letter-spacing:inherit;transform:none;white-space:nowrap;flex:0 0 auto}
.btn>.maki-icon{flex:0 0 27px}
.hero-cta{flex-wrap:wrap;column-gap:22px;row-gap:12px}
.hero-cta>.btn{flex:0 0 auto;min-width:min(268px,100%);justify-content:space-between;padding-left:24px;padding-right:24px}
.hero-cta>.text-link{flex:0 0 auto}
.hero-copy .eyebrow.hero-in{animation-delay:.08s}
.hero-service{animation:hero-secondary .65s ease-out both;animation-delay:.16s}
.hero-line{animation-delay:.22s}
.hero-line:nth-child(2){animation-delay:.35s}
.hero-description.hero-in{animation-delay:.38s}
.hero-cta.hero-in{animation-delay:.48s}
.route-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:0 max(25px,8vw)}
.route-choices a{position:relative;display:grid;grid-template-columns:1fr 20px;gap:5px 16px;padding:20px 24px;min-height:91px;align-content:center;transition:background .25s,transform .25s}
.route-choices a+a{border-left:1px solid #a29d7b44}
.route-choices small{font-size:11px;line-height:1.5;letter-spacing:.1em;color:#6d7759}
.route-choices span{display:block;font-family:var(--serif);font-size:17px;line-height:1.7}
.route-choices span:before{display:none}
.route-choices i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:19px;color:#9c8250;transition:transform .3s}
.route-choices a:hover{background:#b6b9911a}
.route-choices a:hover i{transform:translateY(4px)}
.studio-completion{margin-top:22px;padding-top:20px;border-top:1px solid #d6ca9540;animation:memo-unfold .5s var(--ease) both}
.studio-completion>p{font-family:var(--serif);font-size:18px;line-height:1.8;color:#eee4c4}
.studio-completion>small{display:block;margin-top:9px;font-size:12px;line-height:1.8;color:#c4cfb9}
.studio-completion .studio-next{margin:12px 0 0;min-height:44px;font-size:14px}
.memo-finish{margin:0 0 24px}
.memo-finish>.btn{font-size:14px;min-height:56px}
.memo-finish>p{font-size:12px;margin-top:10px;color:#697758}
.memo-summary{display:flex;gap:16px;align-items:flex-start;padding:20px 21px;margin:3px 0 23px;border:1px solid #b7b58c;border-radius:3px 3px 22px 3px;background:radial-gradient(ellipse at 0 0,#e1caa04a,transparent 80%),linear-gradient(125deg,#faf8eb,#ecebd9);box-shadow:0 12px 24px #3b50300b;animation:memo-unfold .55s var(--ease) both}
.memo-summary:focus{outline:2px solid #a38c51;outline-offset:5px}
.memo-stamp{width:37px;height:37px;border:1px solid #b8a06a;border-radius:50%;display:grid;place-items:center;flex:0 0 37px;animation:memo-stamp .65s var(--ease) both}
.memo-stamp .maki-icon{width:22px;height:22px;color:#8d743f}
.memo-summary>div:last-child{min-width:0}
.memo-summary p{font-size:12px;letter-spacing:.08em;color:#7d734c;margin:0 0 10px;line-height:1.5}
#memo-tags{display:flex;flex-wrap:wrap;gap:6px 15px;padding:0;margin:0 0 12px;list-style:none}
#memo-tags li{font-family:var(--serif);font-size:17px;line-height:1.7}
.memo-summary>div>span{display:block;font-size:12px;line-height:1.8;color:#63714e}
.memo-ready:not(.complete) h3{animation:memo-unfold .45s var(--ease) both}
.js-anim .portrait.reveal{transform:translateY(28px) scale(.97);transition-duration:.85s}
.js-anim .portrait.reveal.is-visible{transform:none}
.js-anim .promise-scene.reveal,.js-anim .flow-list .reveal{transition-duration:.65s}
.story-copy .note,.check-intro p.note{font-size:12px!important}
@keyframes memo-unfold{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes memo-stamp{0%{transform:scale(.65) rotate(-20deg);opacity:0}65%{transform:scale(1.1) rotate(4deg);opacity:1}100%{transform:none;opacity:1}}
@media(max-width:850px){
 .route-choices{padding:0 25px}.route-choices a{padding:17px 15px;gap:5px 8px}.route-choices span{font-size:15px}
 .hero-cta>.btn{min-width:0;font-size:14px;padding:15px 20px}.hero-detail{font-size:12px}.hero-detail small{font-size:11px}
}
@media(max-width:650px){
 .hero-copy .eyebrow{font-size:11px;letter-spacing:.08em}.hero-service{font-size:18px}.hero-description>span{font-size:12px;line-height:1.8}
 .hero-cta>.btn{width:100%;font-size:14px}.btn{gap:15px;padding-left:18px;padding-right:18px;font-size:14px}
 .route-choices{padding:0 14px}.route-choices a{grid-template-columns:1fr;gap:5px;padding:15px 8px;min-height:92px;text-align:center}.route-choices i{display:none}.route-choices span{font-size:13px;white-space:nowrap}.route-choices small{font-size:11px}
 .studio-completion{margin-top:18px;padding-top:17px}.studio-completion>p{font-size:18px}.studio-completion .studio-next{font-size:13px}
 .memo-finish>.btn{width:100%;justify-content:space-between}.memo-summary{gap:12px;padding:18px 15px;margin-bottom:19px}.memo-stamp{width:29px;height:29px;flex-basis:29px}.memo-stamp .maki-icon{width:19px;height:19px}#memo-tags{gap:4px 11px}#memo-tags li{font-size:16px}
 .result-actions>.btn{padding-left:16px;padding-right:16px;gap:14px}.check-intro .eyebrow{font-size:11px}
}
@media(max-width:370px){.btn,.hero-cta>.btn,.result-actions>.btn,.memo-finish>.btn{font-size:13px;gap:12px;padding-left:16px;padding-right:16px}.route-choices{padding:0 8px}.route-choices span{font-size:12px}.route-choices a{padding-left:6px;padding-right:6px}}
