:root{--ink:#26313a;--v:#65477d;--t:#55bfc0;--sky:#a8d9ec;--pale:#f2f9fc;--serif:"Cormorant Garamond",Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:400 15px/1.55 var(--sans)}a{text-decoration:none;color:inherit}header{height:86px;padding:0 8vw;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font:600 30px/1 var(--serif)}.brand span{color:var(--t)}nav{display:flex;gap:26px;font-size:12px}.phone{font-size:12px;font-weight:700}.section{padding:105px 9vw}.hero{display:grid;grid-template-columns:1.04fr .96fr;gap:5vw;align-items:center;padding-top:45px;min-height:650px}.eyebrow{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--v);font-weight:700;margin:0 0 18px}h1,h2{font:600 clamp(46px,5.6vw,77px)/.93 var(--serif);letter-spacing:-.05em;margin:0}h2{font-size:clamp(42px,4.5vw,65px)}h1 i,h2 i{font-weight:500;color:var(--v)}.lead,.intro{font-size:16px;max-width:500px;margin:27px 0}.buttons{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;padding:14px 19px;border-radius:99px;background:var(--v);color:#fff;font-size:12px;font-weight:700;transition:.2s}.button:hover{transform:translateY(-2px)}.secondary{background:#fff;color:var(--ink);border:1px solid #d8e2e5}.facts{font-size:11px;color:#647277;margin-top:30px}.hero-photo{height:550px;position:relative;border-radius:180px 180px 20px 20px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover}.hero-photo small{position:absolute;bottom:18px;left:18px;background:#fffffff2;padding:11px 15px;border-radius:12px;font-size:11px}.hero-photo small:first-letter{color:var(--t)}.pale{background:var(--pale)}.center{text-align:center}.feelings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:46px}.feelings span{padding:28px 12px;min-height:100px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;font:600 23px/1.05 var(--serif)}.feelings span:nth-child(2),.feelings span:nth-child(5){background:var(--sky)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:43px 0 18px;text-align:left}.cards article{min-height:215px;border:1px solid #d9e4e7;border-radius:12px;padding:22px}.cards article>b,.steps article>b{color:var(--t);font:500 21px var(--serif)}h3{margin:38px 0 6px;font-size:15px}.cards p,.steps p{margin:0;color:#67747a;font-size:12px}.link{font-size:12px;font-weight:700;color:var(--v)}.violet{background:var(--v);color:#fff}.violet .eyebrow,.violet h2 i{color:var(--sky)}.group{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw}.group>div>p{max-width:420px}.aqua{background:var(--t);margin-top:12px}.group ul{padding:0;margin:0;list-style:none}.group li{font:500 25px var(--serif);padding:17px 0;border-bottom:1px solid #ffffff55}.steps{margin:45px auto 0;max-width:940px;display:grid;grid-template-columns:repeat(4,1fr);text-align:left;gap:24px}.steps h3{margin:18px 0 7px}.about{background:var(--sky);display:grid;grid-template-columns:.65fr 1fr;gap:8vw;align-items:center}.seven{font:600 clamp(140px,19vw,270px)/.8 var(--serif);color:#fff}.seven span{color:var(--v)}.about>div>p:not(.eyebrow):not(.tags){font-size:16px;max-width:580px}.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-size:10px;background:#ffffffa8;border-radius:99px;padding:7px 10px}.prices{margin:42px auto 13px;max-width:850px;border-top:1px solid #d8e3e6;text-align:left}.prices p{display:grid;grid-template-columns:1.3fr 1fr 1fr;margin:0;padding:15px 0;border-bottom:1px solid #d8e3e6}.prices span,.prices+small{font-size:11px;color:#68777d}.prices strong{text-align:right;font-size:13px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;text-align:left}.faq details{padding:17px 0;border-top:1px solid #cfdee2}.faq details:last-child{border-bottom:1px solid #cfdee2}.faq summary{font-size:13px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary b{color:var(--v);font-size:19px}.faq details p{font-size:12px;color:#647278}.contact{background:var(--t);color:#fff}.contact .eyebrow,.contact h2 i{color:var(--v)}.contact>p:not(.eyebrow){max-width:480px;margin:24px auto}.contact .buttons{justify-content:center}.white{background:#fff;color:var(--v)}.clear{background:transparent;border:1px solid #ffffffaa}.contact small{display:block;margin-top:40px}footer{padding:40px 9vw 55px;display:flex;align-items:center;justify-content:space-between;font-size:10px}footer div{display:flex;gap:17px;color:#647278}.cookie{position:fixed;z-index:5;bottom:20px;left:20px;max-width:420px;background:#fff;padding:18px;border:1px solid #dbe6e8;border-radius:15px;box-shadow:0 15px 40px #26313a22;font-size:11px}.cookie p{margin:5px 0}.cookie>a{color:var(--v);text-decoration:underline}.cookie button{font:700 10px var(--sans);background:var(--v);border:0;color:#fff;padding:8px 10px;border-radius:99px;cursor:pointer}.cookie .muted{background:var(--pale);color:var(--ink)}.cookie .x{position:absolute;right:10px;top:8px;background:none;color:#647278;font-size:18px}.cookie .settings{display:block;border-top:1px solid #e0e8ea;padding-top:9px}.cookie .settings button{margin-left:8px}.mobile{display:none}.legal{max-width:1000px;padding-top:70px}.legal .lead{max-width:680px}.legal-nav{display:flex;flex-wrap:wrap;gap:10px;margin:45px 0 65px}.legal-nav a{padding:8px 11px;background:var(--pale);border-radius:99px;font-size:11px;font-weight:700}.legal section{padding:0 0 45px}.legal h2{font-size:41px;margin-bottom:20px}.legal h3{margin:23px 0 7px}.legal section p{max-width:760px;color:#4c5a60}
@media(max-width:760px){header{height:68px;padding:0 6vw}header nav,.phone{display:none}.section{padding:75px 6vw}.hero{display:flex;flex-direction:column;padding-top:20px;min-height:0}.hero-photo{order:-1;width:100%;height:420px;border-radius:125px 125px 18px 18px}.feelings,.cards{grid-template-columns:1fr 1fr}.feelings{margin-top:32px}.feelings span{font-size:20px}.cards article{min-height:185px;padding:18px}.cards h3{margin-top:29px}.group,.about,.faq{display:block}.group ul{margin-top:36px}.group li{font-size:21px}.steps{grid-template-columns:1fr 1fr;gap:28px}.seven{font-size:135px;margin-bottom:36px}.prices p{grid-template-columns:1.2fr .6fr .9fr}.faq>div+div{margin-top:38px}.contact h2{font-size:45px}footer{display:block;padding:30px 6vw 80px}footer div{display:grid;gap:7px;margin:20px 0}.mobile{position:fixed;bottom:0;z-index:4;width:100%;height:60px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;text-align:center;background:#fff;border-top:1px solid #dbe6e8;font-size:10px;font-weight:700}.mobile a:first-child{color:var(--v)}.cookie{left:10px;right:10px;bottom:70px;max-width:none}.legal{padding-top:45px}.legal h1{font-size:52px}.legal h2{font-size:38px}}

/* Fixed navigation and mobile controls */
body{padding-top:86px}header{position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid #eef2f3;backdrop-filter:blur(12px)}.phone-icon,.menu-toggle{display:none}.hero-photo img{object-position:center 33%}.brand{display:inline-flex;align-items:center;gap:7px;color:var(--ink)}.brand-name{font:600 30px/1 var(--serif);letter-spacing:-1px}.triquetra{width:29px;height:29px;color:var(--t);flex:0 0 auto}
 .service-intro-row{display:flex;align-items:center;justify-content:space-between;gap:28px}.service-intro-row .intro{margin:27px 0}.service-cta{flex:0 0 auto}.cookie{display:flex;align-items:center;gap:20px}.cookie[hidden]{display:none}.cookie-copy{flex:1}.cookie-action{flex:0 0 auto}.cookie-action button{white-space:nowrap}
@media(max-width:760px){body{padding-top:68px}header{height:68px;padding:0 6vw}.phone{display:none}.phone-icon{display:grid;place-items:center;margin-left:auto;width:34px;height:34px;border:1px solid #d8e2e5;border-radius:50%;font-size:17px;color:var(--v)}.menu-toggle{display:grid;gap:4px;width:34px;height:34px;padding:8px;border:0;background:transparent;cursor:pointer}.menu-toggle span{display:block;width:100%;height:1.5px;background:var(--ink);transition:.2s}.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}header nav.open{display:grid;position:absolute;top:60px;left:6vw;right:6vw;z-index:21;padding:18px;background:#fff;border:1px solid #d8e2e5;border-radius:14px;box-shadow:0 14px 34px #26313a18;font-size:13px}.menu-call{margin-top:6px;padding:11px 13px;border-radius:10px;background:var(--v);color:#fff;text-align:center;font-weight:700}.hero-photo img{object-position:center 27%}}
@media(max-width:760px){.service-intro-row{display:block}.service-intro-row .service-cta{margin-top:4px}.cookie{display:flex}.cookie-action{align-self:center}}

/* Reviews carousel */
.reviews{overflow:hidden}.reviews-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.reviews-controls{display:flex;align-items:center;gap:12px}.review-arrow,.lightbox-arrow,.lightbox-close{border:1px solid #d7e3e6;background:#fff;color:var(--ink);cursor:pointer;transition:.2s}.review-arrow{width:46px;height:46px;border-radius:50%;font-size:19px}.review-arrow:hover{background:var(--v);border-color:var(--v);color:#fff}.review-count{min-width:58px;text-align:center;font-size:11px;font-weight:700;color:#65737a}.reviews-viewport{overflow:hidden}.reviews-track{display:flex;gap:18px;transition:transform .45s cubic-bezier(.22,.61,.36,1);touch-action:pan-y}.review-slide{flex:0 0 calc((100% - 36px)/3);height:520px;padding:0;overflow:hidden;border:1px solid #d7e3e6;border-radius:18px;background:var(--pale);cursor:zoom-in}.review-slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:top;transition:transform .35s}.review-slide:hover img{transform:scale(1.02)}.reviews-hint{margin:18px 0 0;color:#6a777d;font-size:11px}.review-lightbox{position:fixed;inset:0;z-index:50;display:grid;grid-template-columns:60px minmax(0,900px) 60px;align-items:center;justify-content:center;gap:18px;padding:30px;background:#172029e8}.review-lightbox[hidden]{display:none}.review-lightbox img{display:block;max-width:100%;max-height:90vh;margin:auto;border-radius:12px;box-shadow:0 20px 70px #0008}.lightbox-arrow{width:50px;height:50px;border:0;border-radius:50%;font-size:20px}.lightbox-close{position:absolute;right:24px;top:20px;width:46px;height:46px;border:0;border-radius:50%;font-size:27px}.lightbox-arrow:hover,.lightbox-close:hover{background:var(--t);color:#fff}.review-lightbox-open{overflow:hidden}
@media(max-width:900px){.review-slide{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:760px){.reviews-head{align-items:flex-end;margin-bottom:28px}.reviews-head h2{font-size:42px}.reviews-controls{gap:6px}.review-arrow{width:40px;height:40px}.review-count{min-width:47px}.review-slide{flex-basis:84%;height:470px}.review-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;gap:7px;padding:64px 8px 20px}.lightbox-arrow{width:40px;height:40px}.lightbox-close{right:12px;top:12px;width:40px;height:40px}.review-lightbox img{max-height:82vh}}
.lightbox-arrow{position:relative;z-index:2}.lightbox-close{z-index:3}
.review-lightbox img{cursor:zoom-out}

/* Certificates carousel */
.certificates{overflow:hidden;background:#fff}.certificates-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.certificates-controls{display:flex;align-items:center;gap:12px}.certificate-arrow{width:46px;height:46px;border:1px solid #d7e3e6;border-radius:50%;background:#fff;color:var(--ink);font-size:19px;cursor:pointer;transition:.2s}.certificate-arrow:hover{background:var(--v);border-color:var(--v);color:#fff}.certificate-count{min-width:58px;text-align:center;font-size:11px;font-weight:700;color:#65737a}.certificates-viewport{overflow:hidden}.certificates-track{display:flex;gap:18px;transition:transform .45s cubic-bezier(.22,.61,.36,1);touch-action:pan-y}.certificate-slide{flex:0 0 calc((100% - 36px)/3);height:470px;padding:18px;overflow:hidden;border:1px solid #d7e3e6;border-radius:18px;background:var(--pale);cursor:zoom-in}.certificate-slide img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .35s}.certificate-slide:hover img{transform:scale(1.02)}.certificates-hint{margin:18px 0 0;color:#6a777d;font-size:11px}.certificate-lightbox{position:fixed;inset:0;z-index:55;display:grid;grid-template-columns:60px minmax(0,900px) 60px;align-items:center;justify-content:center;gap:18px;padding:30px;background:#172029e8}.certificate-lightbox[hidden]{display:none}.certificate-lightbox img{display:block;max-width:100%;max-height:90vh;margin:auto;border-radius:12px;box-shadow:0 20px 70px #0008;cursor:zoom-out}.certificate-lightbox-arrow,.certificate-lightbox-close{position:relative;z-index:2;width:50px;height:50px;border:0;border-radius:50%;background:#fff;color:var(--ink);font-size:20px;cursor:pointer}.certificate-lightbox-close{position:absolute;z-index:3;right:24px;top:20px;font-size:27px}.certificate-lightbox-arrow:hover,.certificate-lightbox-close:hover{background:var(--t);color:#fff}
@media(max-width:900px){.certificate-slide{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:760px){.certificates-head{align-items:flex-end;margin-bottom:28px}.certificates-head h2{font-size:42px}.certificates-controls{gap:6px}.certificate-arrow{width:40px;height:40px}.certificate-count{min-width:47px}.certificate-slide{flex-basis:84%;height:430px;padding:12px}.certificate-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;gap:7px;padding:64px 8px 20px}.certificate-lightbox-arrow{width:40px;height:40px}.certificate-lightbox-close{right:12px;top:12px;width:40px;height:40px}.certificate-lightbox img{max-height:82vh}}

/* Calm reveal motion */
.motion-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.motion-ready .reveal-item{opacity:0;transform:translateY(18px);transition:opacity .58s cubic-bezier(.22,.61,.36,1),transform .58s cubic-bezier(.22,.61,.36,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal.is-visible .reveal-item,.motion-ready .reveal-item.is-visible{opacity:1;transform:none}.cards article,.steps article,.feelings span,.certificate-slide,.review-slide{will-change:transform}.cards article:hover,.steps article:hover{transform:translateY(-4px);box-shadow:0 14px 34px #26313a10;transition:transform .25s ease,box-shadow .25s ease}.feelings span{transition:transform .25s ease}.feelings span:hover{transform:translateY(-3px)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal,.motion-ready .reveal-item{opacity:1;transform:none;transition:none}.cards article,.steps article,.feelings span,.certificate-slide,.review-slide,.button{transition:none!important}.cards article:hover,.steps article:hover,.feelings span:hover,.button:hover{transform:none}}

/* Comfortable spacing for process cards */
.steps{gap:12px}.steps article{padding:22px;border-radius:14px}
@media(max-width:760px){.steps{gap:12px}.steps article{padding:18px}}

/* FAQ accordion motion */
.faq details{overflow:hidden}.faq summary b{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;line-height:1;transform:rotate(0);transform-origin:center;transition:transform .35s cubic-bezier(.22,.61,.36,1),color .25s ease}.faq details[open] summary b{transform:rotate(45deg);color:var(--t)}.faq details p{display:block!important;max-height:0;margin:0;opacity:0;overflow:hidden;transform:translateY(-6px);transition:max-height .48s cubic-bezier(.22,.61,.36,1),opacity .32s ease,transform .4s ease,margin .4s ease}.faq details[open] p{max-height:180px;margin:12px 0 3px;opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.faq summary b,.faq details p{transition:none}}

.faq summary b{transition-duration:.32s}.faq details p{transition:max-height .68s cubic-bezier(.22,.61,.36,1),opacity .52s ease,transform .58s ease,margin .58s ease}.faq details.is-closing p{max-height:0;margin:0;opacity:0;transform:translateY(-6px)}.faq details.is-closing summary b{transform:rotate(0);color:var(--v)}
