@font-face{font-family:Noto Sans TC;src:url(/fonts/noto-sans-tc/noto-sans-tc-site-400-600.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:GenYoGothicBrand;src:url(/fonts/genyo-gothic/genyo-gothic-tc-medium-brand.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--paper:#fff9f1;--ink:#5f4b42;--muted:#70594d;--blue:#cfdde1;--blue-deep:#a65f4d;--blue-soft:#eaf2f6;--pink:#e7bfa3;--pink-deep:#8b5346;--yellow:#fff5c1;--cream:#fffcf7;--line:#d8c9bb;--white:#fffcf7;--gold:#d8a14f;--button-fill:#f2c66d;--button-hover:#eabd61;--radius-lg:2rem;--radius-md:1.25rem;--shadow:0 24px 70px #5f4b4217;--font-sans:"Noto Sans TC", sans-serif;--font-brand:"GenYoGothicBrand", "Noto Sans TC", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;font-weight:400;line-height:1.8}button,input,select,textarea,summary{font:inherit}a{color:inherit}strong,b{font-weight:600}.container{width:min(1160px,100% - 40px);margin-inline:auto}.narrow{width:min(780px,100%)}.section-pad{padding:7rem 0}.skip-link{z-index:100;background:var(--ink);color:#fff;border-radius:.5rem;padding:.65rem 1rem;position:fixed;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-header{z-index:20;backdrop-filter:blur(14px);background:#fffdf9eb;border-bottom:1px solid #d8dedfb3;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:84px;display:flex}.brand{font-family:var(--font-sans);letter-spacing:.12em;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:500;text-decoration:none;display:inline-flex}.brand-name{font-family:var(--font-brand);font-weight:500}.brand>.brand-name{color:var(--blue-deep)}.brand-mark{object-fit:contain;flex-shrink:0;width:2.4rem;height:2.4rem;display:block}.desktop-nav{align-items:center;gap:1.7rem;display:flex}.desktop-nav a,.mobile-menu nav a{color:#875546;letter-spacing:.04em;font-size:.93rem;font-weight:500;text-decoration:none}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--blue-deep)}.nav-cta{border:1px solid var(--blue);border-radius:999px;padding:.65rem 1rem}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;border:1px solid var(--line);border-radius:50%;place-content:center;gap:5px;width:44px;height:44px;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{background:var(--ink);width:18px;height:1.5px}.mobile-menu nav{background:var(--white);border:1px solid var(--line);width:min(290px,100vw - 40px);box-shadow:var(--shadow);border-radius:1rem;gap:.35rem;padding:1rem;display:grid;position:absolute;top:54px;right:0}.mobile-menu nav a{border-radius:.5rem;padding:.7rem .8rem}.mobile-menu nav a[aria-current=page]{background:var(--blue-soft);color:#8e4d3e}.service-nav-group{position:relative}.service-nav-row{align-items:center;gap:.15rem;display:flex}.service-nav-toggle{width:44px;height:44px;color:var(--blue-deep);cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex:0 0 44px;place-items:center;padding:0;display:grid}.service-nav-toggle:hover{background:var(--blue-soft)}.service-nav-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.service-nav-links{background:var(--white);border:1px solid var(--line);width:220px;box-shadow:var(--shadow);border-radius:1rem;margin:0;padding:.5rem;list-style:none;position:absolute;top:calc(100% + .5rem);right:0}.service-nav-links[hidden],.desktop-nav .service-nav-toggle{display:none}.desktop-nav .service-nav-row{min-height:44px}.desktop-nav .service-nav-links:before{content:"";height:.5rem;position:absolute;top:-.5rem;left:0;right:0}@media (hover:none),(pointer:coarse),(any-pointer:coarse){.desktop-nav .service-nav-toggle{display:grid}}.service-nav-links a{border-radius:.5rem;align-items:center;min-height:44px;padding:.6rem .8rem;display:flex}.service-nav-links a:hover{background:var(--blue-soft);color:#8e4d3e}.service-nav-toggle:focus-visible,.site-header nav a:focus-visible,.mobile-menu summary:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.mobile-menu nav{max-height:calc(100dvh - 100px);overflow-y:auto}.mobile-menu .service-nav-row>a{flex:1}.mobile-menu .service-nav-links{width:auto;box-shadow:none;border:0;border-radius:0;padding:.25rem 0 .25rem .8rem;position:static}.hero{padding-top:5.5rem;overflow:hidden}.hero-grid{grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(3rem,7vw,7rem);display:grid}.hero-copy{min-width:0}.eyebrow{color:var(--ink);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1.3rem;font-size:.78rem;font-weight:600;line-height:1.4}.hero-copy>.eyebrow{align-items:center;gap:.75rem;display:flex}.hero-copy>.eyebrow span{background:var(--gold);width:2.4rem;height:2px}h1,h2,h3,blockquote{font-family:var(--font-sans);letter-spacing:.02em;margin-top:0;font-weight:500;line-height:1.35}.hero h1{max-width:100%;color:var(--blue-deep);font-family:var(--font-brand);letter-spacing:.06em;white-space:nowrap;margin-bottom:.8rem;font-size:clamp(3rem,4.5vw,4.5rem);font-weight:500;line-height:1.15}.hero-tagline{max-width:24em;color:var(--ink);font-family:var(--font-sans);margin:0 0 1.7rem;font-size:clamp(1.15rem,1.9vw,1.45rem);font-weight:500;line-height:1.65}.hero-intro{max-width:570px;color:var(--muted);margin:0;font-size:1.05rem}.button-row{flex-wrap:wrap;gap:.8rem;margin-top:2.2rem;display:flex}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.65rem;min-height:50px;padding:.75rem 1.35rem;font-weight:500;text-decoration:none;display:inline-flex}.button-primary{color:var(--ink);border-color:var(--ink);background:var(--button-fill);box-shadow:0 12px 26px #d8a14f2e}.button-primary:hover{background:var(--button-hover);transform:translateY(-1px)}.button-secondary{color:var(--ink);border-color:var(--ink);background:#fffcf799}.button-secondary:hover{background:var(--cream)}.button:active{transform:translateY(1px)}.button-primary:active{background:var(--button-hover)}a:focus-visible,.button:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.button{transition:background-color .2s,transform .2s}.hero-visual{min-height:525px;position:relative}.visual-window{background:var(--white);border:1px solid #a65f4d7a;border-radius:40px;display:block;position:absolute;inset:0;overflow:hidden;box-shadow:0 20px 44px #87554621}.hero-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.about-preview.section-pad{padding-top:1.5rem}.about-preview h2{max-width:10em}.split-section{grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,8rem);display:grid}.split-section h2,.section-heading h2,.page-hero h1{font-size:clamp(2rem,4vw,3.4rem)}.body-copy{color:var(--muted);padding-top:2rem;font-size:1.05rem}.body-copy p:first-child{margin-top:0}.about-preview .body-copy{text-align:left;line-height:1.8}.about-preview .body-copy p{margin:0 0 1em}.about-preview .body-copy p:nth-child(3){color:var(--ink);font-weight:600}.about-preview .body-copy p:nth-child(4){margin-top:1.5em}.text-link{color:var(--ink);text-underline-offset:.35rem;gap:.5rem;margin-top:1rem;font-weight:500;display:inline-flex}.about-preview .text-link{text-decoration:none}.text-link-label{text-underline-offset:.35rem;text-decoration:underline}.offerings{background:var(--cream)}.section-heading{justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3rem;display:flex}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:400px;color:var(--muted);margin:0 0 .5rem}.consultation-heading{display:block}.consultation-heading .keep-together{white-space:nowrap}.card-grid{grid-template-columns:repeat(2,1fr);gap:1.2rem;display:grid}.feature-card{border-radius:var(--radius-lg);flex-direction:column;justify-content:space-between;min-height:340px;padding:clamp(1.6rem,3.5vw,2.7rem);display:flex}.card-blue{background:var(--blue)}.card-pink{background:var(--pink)}.card-number{color:var(--muted);letter-spacing:.15em;align-self:end;font-size:.8rem;font-weight:600}.card-kicker{color:var(--ink);letter-spacing:.1em;margin:0 0 .7rem;font-size:.84rem;font-weight:600}.feature-card h3{margin-bottom:1rem;font-size:clamp(1.5rem,2.7vw,2.2rem)}.feature-card p{color:var(--ink)}.feature-card a{text-underline-offset:.3rem;gap:.6rem;margin-top:1rem;font-weight:500;display:inline-flex}.consultation-card{justify-content:flex-start}.consultation-card .card-kicker{margin-bottom:.9rem}.consultation-card h3{margin-bottom:1rem}.consultation-description{margin:0 0 1.5rem}.consultation-price{color:var(--ink);gap:.3rem;margin-bottom:1.8rem;display:grid}.consultation-price p{color:inherit;margin:0;font-size:clamp(1.08rem,1.8vw,1.3rem);font-weight:600;line-height:1.55}.consultation-price .keep-together{white-space:nowrap}.feature-card .consultation-card-button{color:var(--ink);text-underline-offset:initial;align-self:flex-start;margin-top:auto}.testimonials h2{margin-bottom:2.5rem;font-size:clamp(2rem,4vw,3.4rem)}.testimonial-carousel{min-width:0}.testimonial-viewport{overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;overflow-x:auto}.testimonial-viewport::-webkit-scrollbar{display:none}.testimonial-track{grid-auto-columns:calc(50% - .6rem);grid-auto-flow:column;gap:1.2rem;display:grid}.testimonial-card{scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);height:320px;box-shadow:var(--shadow);flex-direction:column;margin:0;padding:clamp(1.25rem,2vw,1.75rem);display:flex}.testimonial-card blockquote{color:var(--ink);letter-spacing:.01em;margin:0;font-size:1rem;font-weight:400;line-height:1.9}.testimonial-card .testimonial-excerpt{flex:0 0 7.6em;height:7.6em;overflow:hidden}.testimonial-card[data-truncated] .testimonial-excerpt p{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.testimonial-excerpt p{margin:0}.testimonial-card figcaption{border-top:1px solid var(--line);color:var(--muted);margin-top:auto;padding-top:.75rem;font-size:.9rem;line-height:1.7}.testimonial-card cite{color:var(--ink);font-style:normal;font-weight:600}.testimonial-actions{flex-shrink:0;min-height:3rem;margin-top:.5rem}.testimonial-more{border:1px solid var(--ink);min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:.45rem .9rem}.testimonial-more:hover,.testimonial-arrow:not(:disabled):hover,.testimonial-dialog-close:hover{background:var(--blue-soft)}.testimonial-more:active,.testimonial-arrow:not(:disabled):active,.testimonial-dialog-close:active{background:var(--blue)}.testimonial-navigation{justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;display:flex}.testimonial-arrow,.testimonial-dot{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:#ffffffb3;justify-content:center;align-items:center;display:inline-flex}.testimonial-arrow{border-radius:50%;flex:0 0 44px;width:44px;height:44px}.testimonial-arrow svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.testimonial-arrow:disabled{opacity:.42;cursor:not-allowed}.testimonial-dots{align-items:center;gap:.55rem;display:flex}.testimonial-dot{background:0 0;border-color:#0000;border-radius:50%;width:28px;height:28px;padding:0}.testimonial-dot:before{background:var(--muted);content:"";border-radius:50%;width:8px;height:8px}.testimonial-dot[aria-current=true]:before{background:var(--ink);width:11px;height:11px;box-shadow:0 0 0 3px #5f4b4224}.testimonial-more:focus-visible,.testimonial-arrow:focus-visible,.testimonial-dot:focus-visible,.testimonial-dialog-close:focus-visible,.testimonial-viewport:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.testimonial-dialog{border:1px solid var(--line);border-radius:var(--radius-lg);width:min(720px,100% - 2rem);max-height:min(82vh,760px);color:var(--ink);background:var(--white);padding:0;overflow:hidden;box-shadow:0 24px 70px #5f4b4252}.testimonial-dialog::backdrop{background:#3126209e}.testimonial-dialog-panel{max-height:min(82vh,760px);padding:clamp(1.5rem,4vw,2.7rem);overflow-y:auto}.testimonial-dialog-close{border:1px solid var(--ink);min-height:44px;color:var(--ink);background:var(--paper);cursor:pointer;border-radius:999px;margin:0 0 1.5rem auto;padding:.45rem 1rem;display:block}.testimonial-dialog blockquote{color:var(--ink);letter-spacing:.01em;margin:0;font-size:1rem;font-weight:400;line-height:1.9}.testimonial-dialog blockquote p{margin:0}.testimonial-dialog blockquote p+p{margin-top:1.35rem}.testimonial-dialog footer{border-top:1px solid var(--line);color:var(--muted);margin-top:2rem;padding-top:1.25rem;font-size:.9rem;line-height:1.7}.testimonial-dialog cite{color:var(--ink);font-style:normal;font-weight:600}.closing-note{padding-top:2rem;padding-bottom:2rem}.closing-card{border-radius:var(--radius-lg);color:var(--ink);text-align:center;background:#f3e3cf;padding:clamp(2.2rem,7vw,5.5rem)}.closing-card blockquote{text-wrap:balance;max-width:22em;margin:0 auto 1rem;font-size:clamp(1.875rem,4vw,3.25rem)}.closing-card>p:not(.eyebrow){max-width:620px;color:var(--ink);margin:0 auto 2rem;font-size:clamp(1rem,1.4vw,1.125rem)}.closing-card .button-light{color:#fff;background:#c77f67;border-color:#0000}.closing-card .button-light:hover,.closing-card .button-light:active{background:#8e4d3e}.closing-card .button-light:focus-visible{outline-color:#a65f4d}.page-hero{background:linear-gradient(145deg, var(--paper) 55%, var(--blue-soft));padding-bottom:5rem}.page-hero h1{margin-bottom:1.5rem}.page-hero .narrow>p:last-child{max-width:660px;color:var(--muted);font-size:1.1rem}.service-page-hero{padding:2.4rem 0}.service-page-title{color:var(--ink);letter-spacing:.18em;align-items:baseline;font-size:.78rem;font-weight:600;line-height:1.4;display:flex}.service-page-hero .service-page-title h1{font:inherit;letter-spacing:inherit;margin:0}.page-content{min-height:430px;padding-top:5rem}.page-content h2{font-size:clamp(1.6rem,3vw,2.3rem)}.page-content p{color:var(--muted);font-size:1.05rem}.empty-state{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);padding:clamp(2rem,6vw,4rem)}.about-page .about-intro-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(2.5rem,6vw,5rem);display:grid}.about-page h1{color:var(--ink);text-wrap:balance;margin-bottom:1.5rem;font-size:36px;line-height:1.4}.about-page .about-keep-together{white-space:nowrap}.about-page .about-introduction,.about-page .about-story p{color:var(--muted);margin:0 0 1em;font-size:1.05rem;line-height:1.8}.about-page .about-qualifications{padding:0;color:var(--ink);margin:1.5rem 0 0;padding-inline-start:1.25em;font-size:1.05rem;line-height:1.8;list-style-type:disc}.about-page .about-qualifications li+li{margin-top:.35rem}.about-page .about-portrait{border-radius:var(--radius-lg);justify-self:center;width:min(100%,400px);height:auto;display:block}.about-page .about-story{width:min(720px,100% - 40px);padding-bottom:7rem}.about-page .about-story-section+.about-story-section{margin-top:4rem}.about-page .about-story h2{color:var(--ink);text-wrap:balance;margin-bottom:1.5rem;font-size:clamp(1.5rem,2.4vw,2rem)}.about-page .about-story-section>p:last-child{margin-bottom:0}@media (width<=900px){.about-page h1{font-size:26px}.about-page .about-intro-grid{grid-template-columns:1fr}.about-page .about-portrait{width:min(100%,380px)}}@media (width<=640px){.about-page .about-story{width:calc(100% - 28px);padding-bottom:4.5rem}.about-page .about-story-section+.about-story-section{margin-top:3rem}}.service-section{border-top:1px solid var(--line)}.service-section[id]{scroll-margin-top:6.5rem}.service-section-soft,.booking-section{background:var(--cream)}.service-heading{max-width:780px;margin-bottom:3rem}.service-heading h2,.booking-panel h2,.service-footer-cta h2{margin-bottom:1rem;font-size:clamp(2rem,4vw,3.4rem)}.service-lead,.booking-layout>div>p:not(.eyebrow,.booking-contact){color:var(--muted);margin-bottom:0;font-size:1.08rem}.service-age{color:var(--ink);margin:0;font-size:1.08rem;font-weight:500}.service-age small{color:var(--muted);margin-left:.65rem;font-size:.82rem;font-weight:400;display:inline-block}.service-inline-price{color:var(--ink);align-items:baseline;gap:.8rem;margin:1.5rem 0 0;display:flex}.service-inline-price span{color:var(--muted);letter-spacing:.08em;font-size:.85rem}.service-inline-price strong{font-size:clamp(1.55rem,3vw,2.25rem);font-weight:500}.service-price-note{max-width:36rem;color:var(--muted);margin:.6rem 0 0;font-size:.82rem;line-height:1.7}.service-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:1.5rem;display:grid}.service-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);padding:clamp(1.6rem,3vw,2.5rem)}.service-panel h3,.health-note h3{margin-bottom:1.25rem;font-size:clamp(1.35rem,2.3vw,1.8rem)}.service-panel>p{color:var(--muted);margin-bottom:0}.service-asides{gap:1.5rem;display:grid}.service-steps{margin:0;padding:0;list-style:none}.service-steps li{grid-template-columns:2.3rem minmax(0,1fr);gap:1rem;padding:1.3rem 0;display:grid}.service-steps li:first-child{padding-top:0}.service-steps li:last-child{padding-bottom:0}.service-steps li+li{border-top:1px solid var(--line)}.service-steps li>span{width:2.3rem;height:2.3rem;color:var(--ink);background:var(--blue);border-radius:50%;place-items:center;font-size:.82rem;font-weight:600;display:grid}.service-steps h4{margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.service-steps p{color:var(--muted);margin:0}.check-list,.plan-list{color:var(--muted);margin:0;padding-left:1.3rem}.check-list li+li,.plan-list li+li{margin-top:.75rem}.check-list li::marker,.plan-list li::marker{color:var(--pink-deep)}.plan-list{color:var(--ink);margin-bottom:1.25rem;font-weight:500}.health-note{border-radius:var(--radius-md);background:var(--blue);margin-top:1.5rem;padding:clamp(1.5rem,3vw,2.2rem)}.health-note h3{margin-bottom:.65rem}.health-note p{color:var(--ink);margin:0}.booking-section{scroll-margin-top:6.5rem}.booking-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffb8;padding:clamp(2rem,6vw,4rem)}.booking-layout{grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.booking-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.booking-contact{color:var(--muted);margin:1.5rem 0 0;font-size:.9rem}.booking-contact a{color:var(--ink);overflow-wrap:anywhere;text-underline-offset:.25rem}.line-qr{color:var(--ink);text-align:center;gap:.75rem;font-size:.82rem;font-weight:500;text-decoration:none;display:grid}.line-qr img{border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;width:100%;height:auto;padding:.6rem;display:block}.line-qr:focus-visible{outline:3px solid var(--ink);outline-offset:5px;border-radius:var(--radius-md)}.faq-section{background:var(--white)}.faq-category+.faq-category{margin-top:4rem}.faq-category>h3{color:var(--ink);margin-bottom:1.3rem;font-size:clamp(1.35rem,2.5vw,1.8rem)}.faq-item{border-top:1px solid var(--line)}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;padding:1.35rem 3.2rem 1.35rem 0;font-size:1.05rem;font-weight:500;line-height:1.55;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";border:1px solid var(--line);width:1.8rem;height:1.8rem;color:var(--ink);border-radius:50%;place-items:center;font-size:1.15rem;line-height:1;display:grid;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.faq-item[open] summary:after{content:"−"}.faq-item summary:focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:.25rem}.faq-answer{color:var(--muted);padding:0 3.2rem 1.6rem 0}.faq-answer p{margin:0}.faq-answer p+p{margin-top:1rem}.service-footer-cta{padding-top:2rem;padding-bottom:2rem}.site-footer{border-top:1px solid var(--line);margin-top:0;padding:4rem 0 1.5rem}.footer-grid{grid-template-columns:1.3fr .7fr 1fr;gap:4rem;display:grid}.footer-brand{margin-bottom:1rem}.footer-grid p,.footer-contact a{color:var(--muted)}.footer-links{align-content:start;gap:.55rem;display:grid}.footer-links a,.footer-contact a{text-underline-offset:.3rem}.footer-contact{align-content:start;justify-items:start;display:grid}.footer-contact .eyebrow{margin-bottom:.75rem;font-size:calc(1rem + 2px)}.footer-booking-link{margin-top:.6rem;font-size:1rem;display:inline-block}.footer-social-links{flex-wrap:nowrap;gap:.6rem;margin-top:1rem;display:flex}.footer-social-link{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);border-radius:50%;place-items:center;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s,transform .2s;display:grid}.footer-social-link svg{fill:currentColor;width:20px;height:20px;display:block}.footer-social-link:hover{color:var(--ink);border-color:var(--ink);background:var(--blue-soft);transform:translateY(-1px)}.footer-contact a:focus-visible{outline:3px solid var(--ink);outline-offset:4px;border-radius:.25rem}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.2rem;font-size:.78rem;display:flex}.site-header,.hero,.offerings,.booking-section{--paper:#fffdf9;--ink:#875546;--muted:#70594d;--blue:#a65f4d;--blue-soft:#dfe9ed;--pink:#f3d8d5;--yellow:#f5dfa0;--cream:#f8f2e8;--line:#d8dedf;--white:#fff;--shadow:0 24px 70px #87554617;color:var(--ink)}.hero{background:var(--paper)}.hero .eyebrow,.offerings .eyebrow,.booking-section .eyebrow{color:var(--blue-deep)}.hero-copy>.eyebrow span{background:var(--yellow)}.hero-tagline{color:#875546}.offerings .card-blue{background:var(--blue-soft)}.offerings .feature-card p{color:#875546}.offerings .card-number{color:#70594d}.offerings .consultation-price{color:#8e4d3e}.offerings .consultation-price p{color:inherit}.offerings .consultation-card-button{color:#fff}.booking-section .booking-contact a,.booking-section .line-qr{color:var(--blue-deep)}.booking-section .line-qr:focus-visible{outline-color:#a65f4d}:is(.hero,.offerings,.booking-section) .button-primary{color:#fff;background:#c77f67;border-color:#0000;box-shadow:0 12px 26px #a65f4d33}:is(.hero,.offerings,.booking-section) .button-primary:hover,:is(.hero,.offerings,.booking-section) .button-primary:active{background:#8e4d3e}:is(.hero,.booking-section) .button-secondary{color:#c77f67;background:#fff9;border-color:#c77f67}:is(.hero,.booking-section) .button-secondary:hover,:is(.hero,.booking-section) .button-secondary:active{color:#8e4d3e;border-color:#8e4d3e}:is(.site-header,.hero,.offerings,.booking-section) a:focus-visible{outline-color:var(--blue)}@media (width<=900px){.about-preview.section-pad{padding-top:1rem}.desktop-nav{display:none}.mobile-menu{display:block}.hero-grid,.split-section{grid-template-columns:1fr}.hero-visual{width:min(100%,580px);min-height:0}.visual-window{aspect-ratio:1;width:100%;position:relative;inset:auto}.service-grid{grid-template-columns:1fr}.section-heading{display:block}.section-heading>p{margin-top:1rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}@media (width<=640px){.container{width:min(100% - 28px,1160px)}.section-pad{padding:4.5rem 0}.service-page-hero{padding:2.4rem 0}.header-inner{min-height:72px}.brand{font-size:1.08rem}.brand-mark{width:2.15rem;height:2.15rem}.page-hero h1{font-size:1.85rem}.hero{padding-top:3.5rem}.hero h1{margin-bottom:1.25rem}.hero-tagline{max-width:22em;margin-bottom:1.5rem;font-size:1.05rem;line-height:1.75}.button-row,.button{width:100%}.visual-window{aspect-ratio:5/6;border-radius:32px}.card-grid{grid-template-columns:1fr}.testimonial-card{height:320px}.service-heading{margin-bottom:2.2rem}.faq-section .service-heading h2{max-width:10em}.service-age small{margin:.35rem 0 0;display:block}.booking-layout{display:block}.line-qr{display:none}.faq-category+.faq-category{margin-top:3rem}.feature-card{min-height:310px}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column}}@media (width<=767px){.testimonial-track{grid-auto-columns:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
