@charset "UTF-8";
:root{--navy:#071d2c;--deep:#051724;--cyan:#32d9dc;--blue:#117eae;--ink:#102938;--muted:#516571;--line:#dbe4e8;--pale:#f0f5f6;--white:#fff;--width:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.045em;line-height:1.08;font-weight:750}h3{line-height:1.2;letter-spacing:-.025em;font-size:1.45rem}p+p{margin-top:1rem}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0a88ae;outline-offset:5px}.dark a:focus-visible{outline-color:var(--cyan)}.wrap{width:min(var(--width),calc(100% - 64px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.eyebrow{display:block;font-size:.78rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:20px;color:#33707d}.dark .eyebrow{color:var(--cyan)}.dark{background:var(--navy);color:white}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:15px 23px;min-height:52px;background:var(--cyan);color:var(--deep);text-decoration:none;font-weight:700;font-size:.94rem;border:1px solid var(--cyan);border-radius:3px;line-height:1.3;transition:background .15s}.button:hover{background:#72ecee}.button.secondary{background:transparent;color:inherit;border-color:#76909e}.button.secondary:hover{background:#ffffff12}.arrow{font-size:1.3rem;line-height:1}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;font-weight:700}.topline{background:var(--deep);color:#c2d5df;font-size:.78rem;padding:8px 0}.topline .wrap{display:flex;justify-content:space-between;gap:20px}.topline span:last-child{color:var(--cyan)}header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{text-decoration:none;display:inline-flex;flex-direction:column;line-height:1}.brand strong{font-family:Impact,'Arial Narrow',sans-serif;font-stretch:condensed;font-size:2rem;font-weight:800;letter-spacing:-.015em}.brand strong span{color:#008f9a}.brand small{font-size:.6rem;letter-spacing:.11em;margin-top:8px;font-weight:700}.nav{display:flex;align-items:center;gap:29px}.nav a{font-size:.87rem;text-decoration:none;font-weight:600}.nav a:not(.button):hover{color:#007a85}.nav .button{font-size:.85rem;min-height:45px;padding:12px 17px;gap:18px}.menu-toggle{display:none}.hero{position:relative;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:50px;padding:80px 0 75px;align-items:center}.hero h1{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-size:clamp(4rem,7.6vw,6.8rem);font-weight:800;line-height:1;letter-spacing:-.035em}.hero h1 span{display:block;color:var(--cyan)}.hero h2{font-family:Arial,sans-serif;font-size:1.35rem;line-height:1.45;letter-spacing:-.02em;margin:27px 0 14px;max-width:420px}.hero-copy>p{color:#b9cbd5;font-size:1rem;max-width:460px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-foot{font-size:.8rem!important;display:flex;gap:10px;align-items:center;margin-top:25px!important}.hero-foot:before{content:'✓';color:var(--cyan)}.session-panel{position:relative;min-height:443px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#0b334c,#086a8c);overflow:hidden;border-top:2px solid var(--cyan)}.session-panel:before,.session-panel:after{content:'';position:absolute;width:470px;height:470px;border:1px solid #32d9dc40;border-radius:50%;right:-320px;top:-80px;box-shadow:0 0 0 30px #ffffff04,0 0 0 60px #32d9dc0b,0 0 0 90px #ffffff04,0 0 0 120px #32d9dc08}.session-panel:after{width:330px;height:330px;right:-110px;top:270px;box-shadow:none}.session-panel>*{position:relative;z-index:1}.panel-top{display:flex;align-items:center;justify-content:space-between;font-size:.73rem;letter-spacing:.14em}.panel-top b{font-size:1.2rem;letter-spacing:-.08em;border:1px solid #68bbc8;border-radius:50%;padding:8px}.panel-heading{font-size:2.35rem;line-height:1.07;letter-spacing:-.04em;font-weight:700;margin:24px 0}.panel-price{display:flex;align-items:baseline;gap:15px}.panel-price strong{font-size:5rem;line-height:1;letter-spacing:-.06em;color:var(--cyan)}.panel-price span{font-size:.82rem;color:#d3e5ed}.panel-bottom{border-top:1px solid #72aeb855;margin-top:25px;padding-top:18px;font-size:.86rem;color:#d5e9f0;max-width:280px}.trustbar{background:#e7f2f4;border-bottom:1px solid #d6e6e9}.trust-items{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 0;font-size:.84rem;font-weight:700}.trust-items span{display:flex;align-items:center;gap:10px}.trust-items i{font-style:normal;color:#007e8c}.section{padding:94px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:42px}.section-head h2{max-width:600px}.section-head p{max-width:350px;color:var(--muted);font-size:.94rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{border:1px solid var(--line);padding:30px 28px;background:white;position:relative}.service-card .number{font-family:Impact,sans-serif;color:#127b88;font-size:2.5rem;line-height:1;display:block;margin-bottom:40px}.service-card .tag{font-size:.68rem;letter-spacing:.1em;color:#50707b;font-weight:700;display:block;margin-bottom:15px}.service-card p{font-size:.93rem;color:var(--muted);margin:18px 0 28px}.service-card .text-link{font-size:.85rem}.scope{font-size:.82rem;color:var(--muted);border-left:2px solid var(--cyan);padding-left:16px;margin-top:25px}.audience{background:var(--pale)}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.intro{color:var(--muted);margin-top:22px;max-width:480px}.tags{display:flex;flex-wrap:wrap;gap:11px;margin-top:29px}.tags span{background:white;border:1px solid var(--line);padding:9px 15px;border-radius:2px;font-size:.87rem}.steps{counter-reset:steps}.step{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:23px 0;border-top:1px solid #c7d8df}.step:first-child{padding-top:0;border-top:0}.step b{color:#007f8b;font-size:.78rem;padding-top:5px}.step h3{font-size:1.18rem;margin-bottom:9px}.step p{font-size:.92rem;color:var(--muted)}.pricing-section{background:#fff}.price-card{background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr 1.25fr;gap:55px;padding:48px}.price-value{font-size:6.5rem;color:var(--cyan);font-weight:700;line-height:1;letter-spacing:-.07em}.price-label{color:#b7d0dc;margin-top:12px}.included{list-style:none;padding:0;margin:0 0 27px}.included li{padding:9px 0;border-bottom:1px solid #ffffff20;font-size:.92rem}.included li:before{content:'✓';color:var(--cyan);margin-right:14px}.price-note{font-size:.8rem;color:#bed0db;line-height:1.6;margin-top:26px!important}.price-aside{border-top:1px solid var(--line);margin-top:30px;padding-top:22px;color:var(--muted);font-size:.9rem}.area-list{border-top:1px solid #ffffff30;margin-top:30px}.area-list div{padding:15px 0;border-bottom:1px solid #ffffff30;display:flex;justify-content:space-between}.area-list span{font-size:.77rem;color:var(--cyan);align-self:center}.service-area .intro{color:#bccfd9}.area-note{padding:32px;background:#ffffff07;border:1px solid #ffffff20}.area-note h3{font-size:1.5rem;margin-bottom:18px}.area-note p{color:#bdced8;font-size:.93rem}.area-note a{margin-top:24px}.about-layout{display:grid;grid-template-columns:320px 1fr;gap:80px;align-items:center}.portrait-frame{position:relative;padding:0 18px 18px 0}.portrait-frame:after{position:absolute;content:'';inset:30px 0 0 25px;border:2px solid var(--cyan);z-index:-1}.portrait{width:100%;height:385px;object-fit:cover;object-position:center 36%}.portrait-caption{font-size:.82rem;margin-top:20px;color:var(--muted)}.about-copy p{color:var(--muted);font-size:.94rem}.about-copy h2{margin-bottom:26px}.credentials{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.credential{font-size:.78rem;background:var(--pale);border:1px solid var(--line);padding:8px 12px}.editor-note{border:1px dashed #8aa5af;padding:18px 22px;font-size:.86rem;color:var(--muted);margin-top:24px;background:#f7fafb}.editor-note strong{display:block;color:var(--ink);margin-bottom:5px}.testimonials{padding-top:0}.testimonial-placeholder{background:var(--pale);padding:35px;display:flex;align-items:center;justify-content:space-between;gap:40px;border-left:3px solid var(--cyan)}.testimonial-placeholder h2{font-size:1.8rem}.testimonial-placeholder p{font-size:.9rem;color:var(--muted);max-width:490px}.review{padding:30px;background:var(--pale);margin-top:20px}.review blockquote{margin:0 0 15px}.faq-section{background:var(--pale)}.faq-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:90px}.faq-intro p{margin:22px 0;color:var(--muted)}details{border-top:1px solid #cbd9df}details:last-child{border-bottom:1px solid #cbd9df}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:.96rem;font-weight:700}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:1.4rem;font-weight:400;color:#007f8b}details[open] summary:after{content:'−'}details p{padding:0 30px 22px 0;color:var(--muted);font-size:.92rem}.contact{background:var(--cyan);color:var(--navy)}.contact .eyebrow{color:#06515c}.contact h2{font-size:clamp(2.6rem,5vw,4rem)}.contact .intro{color:#174c58}.contact .button{background:var(--navy);color:white;border-color:var(--navy)}.contact .button:hover{background:#164358}.contact-actions{display:flex;gap:13px;flex-wrap:wrap;margin:27px 0 15px}.contact .button.secondary{background:transparent;color:var(--navy)}.contact-small{font-size:.8rem;max-width:450px}.contact-list{padding:10px 0 0}.contact-list>a,.contact-list>.unavailable{padding:18px 0;border-bottom:1px solid #104c5740;text-decoration:none;display:flex;justify-content:space-between;gap:20px}.contact-list span{font-size:.82rem;align-self:center}.contact-list strong{font-size:.94rem;text-align:right}.contact-list>a:hover strong{text-decoration:underline}.unavailable{opacity:.76}.contact-list .unavailable strong{font-weight:400;font-size:.8rem}footer{background:var(--deep);color:#b4c7d3;padding:45px 0 24px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:30px}.footer-top .brand{color:#fff}.footer-top .brand span{color:var(--cyan)}.footer-top>p{font-size:.83rem;max-width:330px}.footer-bottom{border-top:1px solid #ffffff20;padding-top:23px;display:flex;justify-content:space-between;gap:24px;font-size:.75rem}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}.mobile-booking{display:none}.policy{padding:70px 0 90px;max-width:800px}.policy h1{font-size:3rem;letter-spacing:-.04em;line-height:1.15;margin-bottom:20px}.policy h2{font-size:1.6rem;margin:32px 0 12px;letter-spacing:-.025em}.policy p,.policy li{color:var(--muted)}.policy .draft{border-left:3px solid #d19632;padding:18px;background:#fff8e9;margin:25px 0}.policy .draft p{color:#715015}.legal-placeholder{font-weight:700;color:#7d5115}.noscript-menu{font-size:.85rem}.preview-notice{font-size:.78rem;background:#e8f4f5;color:#185866;padding:9px 16px;text-align:center}
@media(min-width:1450px){.hero-layout{padding:95px 0}.hero h1{font-size:7rem}}
@media(max-width:1050px){.nav{gap:18px}.nav a{font-size:.8rem}.hero-layout{gap:25px}.session-panel{padding:26px}.hero h1{font-size:5rem}.split,.faq-layout{gap:45px}.about-layout{gap:45px;grid-template-columns:280px 1fr}.price-card{gap:25px;padding:32px}.service-card{padding:25px 22px}}
@media(max-width:780px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 40px)}.topline{font-size:.7rem}.topline span:last-child{display:none}.header-inner{height:78px}.brand strong{font-size:1.7rem}.brand small{font-size:.5rem}.js .menu-toggle{display:block;background:white;border:1px solid var(--line);padding:8px 12px;border-radius:3px;min-height:44px;font-weight:700;font-size:.85rem}.nav{gap:15px;flex-wrap:wrap;justify-content:flex-end}.js .nav{display:none;position:absolute;left:0;top:78px;width:100%;padding:15px 20px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #071d2c0c}.js .nav.open{display:flex;flex-direction:column;align-items:stretch}.nav a{font-size:.94rem;padding:10px 0}.nav .button{padding:13px}.hero-layout{grid-template-columns:1fr;padding:48px 0;gap:35px}.hero .eyebrow{font-size:.72rem;margin-bottom:22px}.hero h1{font-size:clamp(3.4rem,12.3vw,5.8rem)}.hero h2{font-size:1.22rem;margin-top:25px;max-width:100%}.hero-copy>p{max-width:540px}.hero-actions{gap:10px}.hero-actions .button{padding:14px 18px;font-size:.85rem;gap:14px}.session-panel{min-height:250px;display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:25px}.panel-top{grid-column:1/-1}.panel-heading{font-size:1.85rem;margin:12px 0 0}.panel-price{align-self:center;justify-content:flex-end;flex-wrap:wrap;gap:4px 10px}.panel-price strong{font-size:4rem}.panel-bottom{grid-column:1/-1;max-width:none;margin-top:5px;padding-top:12px}.trust-items{display:grid;grid-template-columns:1fr 1fr;gap:13px;font-size:.73rem;padding:22px 0}.section{padding:60px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:20px;max-width:550px}.service-grid{grid-template-columns:1fr}.service-card{padding:25px}.service-card .number{font-size:2rem;margin-bottom:23px}.service-card p{margin-bottom:20px}.service-card h3{font-size:1.5rem}.split{grid-template-columns:1fr;gap:34px}.price-card{padding:30px;grid-template-columns:1fr 1.15fr;gap:20px}.price-value{font-size:5rem}.price-card .button{width:100%;font-size:.85rem;padding:14px;gap:14px}.price-note{grid-column:1/-1}.about-layout{grid-template-columns:1fr;gap:35px}.portrait-frame{width:240px}.portrait{height:270px}.about-copy h2{font-size:2.6rem}.about-copy p{font-size:.97rem}.testimonial-placeholder{display:block;padding:25px}.testimonial-placeholder p{margin-top:18px}.testimonials{padding-top:0}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-intro p{margin:16px 0}.faq-intro h2{max-width:300px}.contact .split{gap:25px}.footer-top,.footer-bottom{flex-direction:column}.footer-top{gap:25px}.footer-links{gap:14px}footer{padding-bottom:110px}.mobile-booking{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:white;border-top:1px solid var(--line);box-shadow:0 -4px 20px #0517240b}.mobile-booking>span{font-size:.77rem;line-height:1.4}.mobile-booking>span strong{display:block;font-size:1.13rem}.mobile-booking .button{font-size:.87rem;padding:12px 18px;min-height:47px;gap:20px}.policy h1{font-size:2.4rem}.policy{padding-top:40px}}
@media(max-width:390px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:3.35rem}.price-card{grid-template-columns:1fr}.panel-price strong{font-size:3.4rem}.panel-heading{font-size:1.65rem}.panel-price span{font-size:.7rem}.trust-items{font-size:.7rem}.hero-actions .button{padding:13px 14px;font-size:.8rem}.contact-list>a,.contact-list>.unavailable{gap:10px}.contact-list strong{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{header,.hero-actions,.mobile-booking,.contact-actions,.menu-toggle{display:none!important}.section{padding:28px 0}.dark{background:#fff;color:#102938}.hero h1 span{color:#007f8b}footer{padding-bottom:20px}details p{display:block}.service-card{break-inside:avoid}}
/* Keep supporting price information full-width and navigation usable without scripts. */
.price-card .price-note{grid-column:1/-1}
@media(max-width:780px){html:not(.js) .header-inner{height:auto;min-height:78px;flex-wrap:wrap;padding:15px 0}html:not(.js) .nav{justify-content:flex-start;width:100%}}

/* Two clear mobile appointment options. */
.price-options{background:var(--navy);color:#fff;padding:38px}
.price-option{display:grid;grid-template-columns:1fr auto;gap:24px;padding:24px 0;border-bottom:1px solid #ffffff25}
.price-option:first-child{padding-top:0}
.price-option h3{font-size:1.3rem}
.price-option .duration{display:block;color:var(--cyan);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:7px 0 10px}
.price-option p{color:#bed0db;font-size:.88rem;max-width:390px}
.price-option .price-value{font-size:4.5rem;white-space:nowrap}
.price-options>.button{margin-top:24px}
.price-options .price-note{margin-top:22px!important}
@media(max-width:1050px){.price-options{padding:32px}}
@media(max-width:780px){.price-options{padding:28px}.price-option{grid-template-columns:1fr auto}.price-option .price-value{font-size:3.8rem}.price-options>.button{width:100%}}
@media(max-width:390px){.price-option{grid-template-columns:1fr}.price-option .price-value{font-size:3.5rem}}
/* Supplied Facebook recommendations; no invented ratings or review counts. */
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.review{margin:0;padding:28px;display:flex;flex-direction:column;border:1px solid var(--line);background:#f4f8f9}
.review-mark{font-family:Georgia,serif;font-size:4.5rem;color:#008b96;line-height:.85;margin:6px 0 12px}
.review blockquote{font-size:1rem;line-height:1.65;margin:0 0 26px}
.review figcaption{margin-top:auto;padding-top:20px;border-top:1px solid var(--line)}
.review figcaption strong{display:block;font-size:.91rem}
.review figcaption span{display:block;color:var(--muted);font-size:.76rem;margin-top:3px}
.more-reviews{margin-top:25px}.more-reviews summary{padding:20px 0}.more-reviews .review-grid{padding-bottom:24px}
.review-note{font-size:.8rem;color:var(--muted);margin-top:20px}
@media(max-width:780px){.review-grid{grid-template-columns:1fr}.testimonials .section-head .text-link{margin-top:22px}.review{padding:25px}.review-mark{font-size:3.5rem}.review blockquote{margin-bottom:20px}}

.qualification-confirmed{border:1px solid var(--line);border-left:3px solid var(--cyan)}

/* Testimonials now follow the dark service-area section. */
.testimonials{padding-top:94px}
@media(max-width:780px){.testimonials{padding-top:60px}}
