:root{--cream:#fff8f0;--white:#fffdfa;--apricot:#fbe3cf;--apricot-deep:#f6cfae;--tea:#ecdcc9;--tea-deep:#c9a98a;--cocoa:#5a3e2b;--cocoa-soft:#8b6f5b;--orange:#f37021;--orange-deep:#e2600f;--gold:#b8975a;--font:"Chiron GoRound TC", "PingFang HK", "Microsoft JhengHei", system-ui, sans-serif;--r-lg:2.25rem;--r-md:1.5rem;--gutter:clamp(1.1rem, 4vw, 2.5rem);--max:1160px;--gap:clamp(4rem, 9vw, 7rem)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem}body{background:var(--cream);color:var(--cocoa);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:1.02rem;line-height:1.85;overflow-x:clip}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,ol,ul,figure{margin:0}ol,ul{padding:0;list-style:none}h1,h2,h3{letter-spacing:.03em;font-weight:900;line-height:1.35}h2{font-size:clamp(1.7rem,3.6vw,2.5rem)}:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:.5rem}.skip{position:absolute;left:-999px}.skip:focus{z-index:100;background:var(--cocoa);color:var(--cream);border-radius:999px;padding:.5rem 1rem;top:1rem;left:1rem}.pic-missing{background:var(--apricot-deep);width:100%;min-height:12rem}.wrap{max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}main>section{margin-top:var(--gap)}main>section:first-child{margin-top:0}.tag{background:var(--apricot);color:var(--orange-deep);letter-spacing:.14em;border-radius:999px;margin-bottom:1rem;padding:.25em 1em;font-size:.85rem;font-weight:700;display:inline-block}.panel--apricot .tag,.panel--tea .tag{background:var(--white)}.tag--light{color:#fff;background:#ffffff38}.btn{background:var(--orange);color:#fff;letter-spacing:.06em;white-space:nowrap;box-shadow:0 6px 0 var(--orange-deep);border-radius:999px;justify-content:center;align-items:center;padding:.85em 1.7em;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex}.btn:hover{box-shadow:0 3px 0 var(--orange-deep);transform:translateY(3px)}.btn--small{box-shadow:0 4px 0 var(--orange-deep);padding:.55em 1.2em;font-size:.88rem}.btn--ghost{background:var(--white);color:var(--cocoa);box-shadow:0 6px 0 var(--tea-deep)}.btn--ghost:hover{box-shadow:0 3px 0 var(--tea-deep)}.btn--cream{background:var(--cream);color:var(--orange-deep);box-shadow:0 6px #5a3e2b59}.btn--cream:hover{box-shadow:0 3px #5a3e2b59}.link{color:var(--orange-deep);letter-spacing:.06em;border-bottom:2px dotted;padding-bottom:.1em;font-weight:700;text-decoration:none}.link:after{content:" →"}a.link:hover,a:hover .link{border-bottom-style:solid}.actions{flex-wrap:wrap;align-items:center;gap:1.2rem 1.8rem;margin-top:1.8rem;display:flex}.head{max-width:38rem;margin-bottom:clamp(1.8rem,4vw,2.8rem)}.head>h2+p{color:var(--cocoa-soft);margin-top:.9rem}.head--center{text-align:center;margin-inline:auto}.panel{border-radius:var(--r-lg);margin-inline:clamp(.5rem,2vw,1.5rem);padding:clamp(3rem,7vw,5rem) 0}.panel--apricot{background:var(--apricot)}.panel--tea{background:var(--tea)}.reveal-on [data-reveal]{opacity:0;transition:opacity .6s,transform .6s;transition-delay:calc(var(--i,0) * 80ms);transform:translateY(16px)}.reveal-on [data-reveal].is-in{opacity:1;transform:none}.site-header{z-index:50;padding:.7rem var(--gutter);background:color-mix(in srgb, var(--cream) 90%, transparent);backdrop-filter:blur(10px);justify-content:space-between;align-items:center;gap:1.5rem;display:flex;position:sticky;top:0}.logo img{width:clamp(7rem,13vw,9.5rem)}.site-nav{letter-spacing:.1em;gap:2rem;font-size:.95rem;font-weight:500;display:none}.site-nav a{border-bottom:2px dotted #0000;padding:.2em 0;text-decoration:none}.site-nav a:hover{color:var(--orange-deep);border-bottom-color:currentColor}@media (width>=880px){.site-nav{display:flex}}.hero{gap:2.5rem;padding-top:clamp(1.5rem,4vw,3.5rem);display:grid}.hero h1 em{color:var(--orange);font-style:normal}.lead{max-width:31rem;margin-top:1.3rem}.lead strong{background:linear-gradient(transparent 60%, var(--apricot-deep) 60%)}.chips{flex-wrap:wrap;gap:.6rem;margin-top:2.2rem;display:flex}.chips li{border:1.5px solid var(--tea-deep);color:var(--cocoa-soft);border-radius:999px;padding:.3em 1em;font-size:.88rem;font-weight:500}.hero-banner{border-radius:var(--r-lg);width:min(100%,26rem);box-shadow:.7rem .7rem 0 var(--apricot-deep);justify-self:center;transition:transform .3s;display:block;overflow:hidden;transform:rotate(1.5deg)}.hero-banner:hover{transform:rotate(0)}.hero-banner img,.hero-banner .pic-missing{aspect-ratio:2/3;object-fit:cover;width:100%}@media (width>=900px){.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:3rem}.hero-banner{justify-self:end}}.cards{gap:1.4rem;display:grid}@media (width>=640px){.cards{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.cards{grid-template-columns:repeat(3,1fr)}}.card{background:var(--white);border-radius:var(--r-md);height:100%;padding:.7rem;text-decoration:none;transition:transform .25s,box-shadow .25s;display:block}.card:hover{box-shadow:0 12px 0 var(--apricot-deep);transform:translateY(-5px)}.card img,.card .pic-missing{aspect-ratio:1;object-fit:cover;border-radius:1.05rem;width:100%}.card-body{padding:1rem .6rem .7rem}.card h3{font-size:1.3rem}.card p{color:var(--cocoa-soft);margin:.2rem 0 .7rem;font-size:.96rem}.card .link{font-size:.9rem}.approach{gap:2.5rem;display:grid}.approach-photo img,.approach-photo .pic-missing{aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-lg);width:100%}.points{counter-reset:point;gap:1.1rem;display:grid}.points li{counter-increment:point;grid-template-columns:2.6rem 1fr;align-items:start;column-gap:1rem;display:grid}.points li:before{content:counter(point);border:2px solid var(--gold);width:2.6rem;height:2.6rem;color:var(--gold);border-radius:50%;grid-row:span 2;place-items:center;font-size:1.1rem;font-weight:900;display:grid}.points h3{font-size:1.15rem}.points p{color:var(--cocoa-soft)}@media (width>=900px){.approach{grid-template-columns:1fr 1fr;align-items:center;gap:4rem}}.steps{counter-reset:step;gap:1rem;display:grid}.steps li{counter-increment:step;background:var(--white);border-radius:var(--r-md);padding:1.5rem 1.4rem 1.6rem}.steps li:before{content:counter(step);background:var(--orange);color:#fff;border-radius:50%;place-items:center;width:2.3rem;height:2.3rem;margin-bottom:.8rem;font-weight:900;display:grid}.steps h3{margin-bottom:.3rem;font-size:1.15rem}.steps p{color:var(--cocoa-soft);font-size:.96rem}@media (width>=640px){.steps{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.steps{grid-template-columns:repeat(4,1fr)}}.visit{gap:2rem;display:grid}.visit-photo img,.visit-photo .pic-missing{aspect-ratio:3/2;object-fit:cover;border-radius:var(--r-lg);width:100%}.visit-card>h2+p{color:var(--cocoa-soft);margin-top:.8rem}.visit address{background:var(--apricot);border-radius:var(--r-md);gap:.2rem;margin-top:1.4rem;padding:1.1rem 1.3rem;font-style:normal;display:grid}.visit address strong{font-size:1.08rem;line-height:1.6}.visit address span{color:var(--cocoa-soft);font-size:.88rem;line-height:1.5}@media (width>=900px){.visit{grid-template-columns:1.15fr 1fr;align-items:center;gap:3.5rem}}.offer{background:var(--orange);color:#fff;border-radius:var(--r-lg);gap:2rem;padding:clamp(2rem,5vw,3.5rem);display:grid}.offer h2{font-size:clamp(2rem,5.5vw,3.2rem)}.offer-price{letter-spacing:-.01em;font-size:clamp(4.5rem,15vw,8rem);font-weight:900;line-height:1.05}.offer-price small{letter-spacing:.05em;vertical-align:1.9em;margin-right:.3em;font-size:.25em}.offer-list{flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;display:flex}.offer-list li{background:#fff3;border-radius:999px;padding:.25em 1em;font-size:.95rem;font-weight:700}.offer-side{border-radius:var(--r-md);background:#ffffff29;flex-direction:column;justify-content:center;align-items:flex-start;gap:1.2rem;padding:1.8rem;display:flex}.offer-extra{font-size:clamp(1.4rem,2.8vw,1.8rem);font-weight:900;line-height:1.5}@media (width>=900px){.offer{grid-template-columns:1fr 20rem;align-items:stretch}}.faq-list{gap:.8rem;max-width:46rem;margin-inline:auto;display:grid}.faq details{background:var(--white);border:1.5px solid var(--apricot-deep);border-radius:var(--r-md);padding:0 1.4rem}.faq summary{cursor:pointer;padding:1.1rem 2.2rem 1.1rem 0;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";background:var(--apricot);width:1.7rem;height:1.7rem;color:var(--orange-deep);border-radius:50%;place-items:center;font-weight:900;line-height:1;transition:rotate .25s;display:grid;position:absolute;top:50%;right:0;translate:0 -50%}.faq details[open] summary:after{rotate:45deg}.faq summary h3{font-size:1.08rem;font-weight:700}.faq details p{color:var(--cocoa-soft);padding-bottom:1.3rem}.closing{text-align:center;padding:clamp(2.5rem, 6vw, 4.5rem) var(--gutter);background:var(--apricot);border-radius:var(--r-lg)}.closing-img{aspect-ratio:1;object-fit:cover;border:4px solid var(--white);border-radius:50%;width:6.5rem;margin:0 auto 1.4rem}.closing p{color:var(--cocoa-soft);margin:.6rem 0 1.8rem}.site-footer{margin-top:var(--gap);background:var(--tea);padding:clamp(2.5rem, 6vw, 4rem) var(--gutter) 2rem;border-radius:var(--r-lg) var(--r-lg) 0 0;font-size:.94rem}.footer-top{max-width:var(--max);gap:2.2rem;margin:0 auto;display:grid}.footer-logo{width:10rem}.footer-line{margin-top:1rem;font-weight:700}.site-footer h2{letter-spacing:.2em;color:var(--orange-deep);margin-bottom:.7rem;font-size:.82rem}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--orange-deep)}.site-footer address{margin-bottom:.7rem;font-style:normal}.site-footer address span{color:var(--cocoa-soft);font-size:.86rem}.disclaimer,.copyright{max-width:var(--max);border-top:1.5px dotted var(--tea-deep);color:var(--cocoa-soft);margin:2rem auto 0;padding-top:1.3rem;font-size:.8rem;line-height:1.8}.copyright{border:0;margin-top:.6rem;padding-top:0}@media (width>=800px){.footer-top{grid-template-columns:1.2fr 1fr 1.2fr}}.hero h1{font-size:clamp(2.1rem,6.4vw,3.5rem);line-height:1.4}.concerns{gap:1.2rem;display:grid}.concerns li{background:var(--white);border:1.5px solid var(--apricot-deep);border-radius:var(--r-md);padding:1.8rem 1.7rem 1.7rem;position:relative}.concerns li:after{content:"♥";color:var(--apricot-deep);font-size:1.2rem;line-height:1;position:absolute;top:1.2rem;right:1.4rem}.concern-name{letter-spacing:.12em;color:var(--gold);margin-bottom:.5rem;font-size:.82rem;font-weight:700;display:inline-block}.concerns h3{color:var(--cocoa);margin-left:-.5em;font-size:clamp(1.2rem,2.4vw,1.45rem);line-height:1.5}.concerns li>p:last-child{color:var(--cocoa-soft);margin-top:.6rem}.concerns-note{background:var(--apricot);border-radius:var(--r-md);margin-top:1.6rem;padding:1.3rem 1.6rem}.concerns-note strong{color:var(--orange-deep)}@media (width>=700px){.concerns{grid-template-columns:repeat(2,1fr)}}.concern-help{background:var(--apricot);border-radius:1.1rem;margin-top:1.1rem;padding:1rem 1.2rem 1.1rem}.concern-help-label{letter-spacing:.14em;color:var(--orange-deep);margin-bottom:.2rem;font-size:.8rem;font-weight:900}.concern-help .link{margin-top:.7rem;font-size:.92rem;display:inline-block}.concerns li>p:last-child{margin-top:0}.concerns li>h3+p{color:var(--cocoa-soft);margin-top:.6rem}.reasons{gap:1rem;display:grid}.reasons li{background:var(--white);border-radius:var(--r-md);padding:1.5rem 1.5rem 1.6rem}.reasons h3{color:var(--orange-deep);margin-bottom:.3rem;font-size:1.2rem}.reasons p{color:var(--cocoa-soft)}.why-line{text-align:center;margin-top:2rem;font-size:clamp(1.1rem,2.4vw,1.4rem);font-weight:700}.why-line strong{color:var(--orange-deep);background:linear-gradient(transparent 62%, var(--white) 62%)}@media (width>=800px){.reasons{grid-template-columns:repeat(3,1fr)}}#approach .approach{margin-bottom:2.2rem}#approach .approach .head{margin-bottom:0}#approach .steps li{background:var(--apricot)}.offer{grid-template-columns:1fr;align-items:center}.offer-banner{aspect-ratio:2/3;object-fit:cover;border-radius:var(--r-md);border:5px solid var(--cream);justify-self:center;width:min(100%,17rem);transform:rotate(-2deg)}.offer-main h3{font-size:clamp(1.6rem,4vw,2.2rem)}.offer-main .offer-price{font-size:clamp(4rem,12vw,6.5rem)}.offer-main>p:not(.tag):not(.offer-price):not(.offer-extra){margin:.4rem 0 1.6rem}@media (width>=800px){.offer{grid-template-columns:17rem 1fr;gap:3rem}}h1,h2,h3{text-wrap:balance}.hero h1 em{white-space:nowrap}
