@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800&family=Inter:wght@400;500;600;700;800&display=swap');
:root{--honey:#f5a623;--teal:#1a6b5a;--deep:#124d41;--cream:#fffcf5;--warm:#fff8ed;--ink:#1c1c1e;--muted:#4a4a4a;--line:#e8e2d8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:18px/1.7 Inter,Arial,sans-serif}a{color:var(--teal);text-underline-offset:4px}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}:focus-visible{outline:3px solid var(--ink);outline-offset:5px}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:fixed;top:10px;left:10px;transform:translateY(-200%);z-index:200;background:#fff;padding:14px}.skip:focus{transform:none}header{position:sticky;top:0;z-index:100;background:rgba(255,252,245,.97);border-bottom:1px solid var(--line)}.nav{display:flex;min-height:86px;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font:800 25px/1.1 'Playfair Display',Georgia,serif;text-decoration:none}.brand img{width:54px;height:54px;object-fit:contain}.brand small{display:block;font:500 12px/1.6 Inter,Arial,sans-serif;letter-spacing:.02em;color:var(--muted);margin-top:4px}.links{display:flex;align-items:center;gap:6px}.links a{font-size:15px;font-weight:700;padding:10px 12px;text-decoration:none;border-radius:8px}.links a:hover{background:#e6f4f0}.menu{display:none;min-height:48px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 24px;border-radius:12px;border:2px solid var(--teal);font-weight:800;text-decoration:none;cursor:pointer;line-height:1.4;background:var(--teal);color:#fff}.btn.gold{background:var(--honey);border-color:var(--honey);color:var(--ink)}.btn.outline{background:transparent;color:var(--teal)}.btn:hover{box-shadow:0 6px 16px rgba(0,0,0,.1)}.actions{display:flex;flex-wrap:wrap;gap:14px;margin:26px 0}.eyebrow{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);margin-bottom:16px}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.15;margin:0 0 18px}h1{font-size:clamp(40px,5vw,68px);letter-spacing:-.025em}h2{font-size:clamp(30px,3.8vw,46px);letter-spacing:-.015em}h3{font-size:25px}p{margin:0 0 20px;color:var(--muted)}.lead{font-size:21px;line-height:1.7;max-width:630px}.hero{padding:72px 0 62px;background:linear-gradient(145deg,#fff9ee,#e8f5f1 65%,#f0faf7);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:60px}.hero h1 span{color:var(--teal)}.hero-art{position:relative;display:grid;place-items:center;min-height:380px}.halo{position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(26,107,90,.07);border:1px solid rgba(26,107,90,.15)}.hero-art img{position:relative;width:290px;filter:drop-shadow(0 18px 24px rgba(26,107,90,.15));will-change:transform}.art-note{position:absolute;bottom:0;background:#fff;padding:14px 22px;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 24px rgba(0,0,0,.06);font-size:16px;text-align:center}.art-note strong{display:block;color:var(--teal)}.small{font-size:15px}.trust{background:var(--teal);color:#fff}.trust .wrap{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 44px;padding:20px 0;font-size:16px;font-weight:700}.section{padding:80px 0}.heading{max-width:780px;margin:0 auto 38px;text-align:center}.heading p{font-size:20px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{background:#fff;padding:28px;border:1px solid var(--line);border-radius:18px}.card .icon{width:50px;height:50px;margin-bottom:20px;display:grid;place-items:center;background:#e6f4f0;border-radius:12px;font-size:24px}.card p{font-size:17px}.card a{font-weight:800}.warm{background:var(--warm)}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.promise{padding:36px;background:var(--teal);border-radius:22px;color:#fff}.promise h3{font-size:30px}.promise p{color:#fff}.promise ul{padding-left:22px;margin:0}.promise li{margin:14px 0}.price-card{display:flex;flex-direction:column}.price{font:800 46px/1.2 Inter,Arial,sans-serif;margin:10px 0;color:var(--teal)}.price small{font-size:16px;font-weight:600}.price-card ul{padding-left:20px;flex:1;font-size:16px}.price-card li{margin:9px 0}.price-card .btn{padding:12px 14px;font-size:16px}.fine{font-size:15px;max-width:900px;margin:22px auto 0}.steps{grid-template-columns:repeat(3,1fr)}.num{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--honey);color:var(--ink);font-weight:800;margin-bottom:20px}.owl-card{text-align:center;background:#e6f4f0;border:1px solid var(--line);border-radius:22px;padding:36px}.owl-card img{width:180px}.owl-card p{margin:12px 0 0}.topics{grid-template-columns:repeat(3,1fr)}.topics a.card{display:block;text-decoration:none}.topics .card:hover{border-color:var(--teal)}.topics h3{font-size:24px}.topics p{margin:0}.faq{max-width:900px;margin:auto}details{padding:20px 0;border-bottom:1px solid var(--line)}summary{font-size:20px;font-weight:700;color:var(--teal);cursor:pointer}details p{margin:16px 0 0}.booking{max-width:920px;margin:auto;text-align:center}.cal-frame{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}#cal-embed{min-height:680px}#calendarPanel[hidden]{display:none}.form{background:#fff;padding:32px;border:1px solid var(--line);border-radius:18px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:18px}label{display:block;font-weight:700;margin-bottom:6px}input,select,textarea{width:100%;padding:12px;min-height:52px;border:2px solid #898989;border-radius:8px;background:#fff;color:var(--ink)}textarea{min-height:120px;resize:vertical}.hp{position:absolute;left:-9999px}.status{margin-top:16px;font-weight:700}.status:empty{display:none}.status.error{color:#842121}.status.success{color:var(--teal)}.contact{align-items:start}.contact ul{padding-left:22px}footer{background:var(--deep);color:#fff;padding:46px 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:40px}footer p{color:#fff;font-size:16px}footer a{color:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:16px;margin:20px 0}.footer-brand{color:#fff}.copyright{font-size:14px;border-top:1px solid rgba(255,255,255,.2);padding-top:18px;margin-top:24px}.sticky-actions{display:none}.prose{max-width:820px;margin:auto}.prose h2{font-size:30px;margin:34px 0 14px}.prose p,.prose li{font-size:20px}.prose li{margin-bottom:12px}.prose .cta{background:var(--warm);padding:28px;border-radius:18px;margin-top:40px}.prose .cta .btn{font-size:18px}.article-meta{font-size:15px!important}.payment-layout{max-width:960px;margin:auto}.payment-layout .split{grid-template-columns:1.5fr .5fr}.payment-layout img{width:150px}.payment-layout .card{margin-bottom:24px}.payment-layout h1{font-size:clamp(34px,5vw,52px)}
@media(max-width:1080px){.grid{grid-template-columns:repeat(2,1fr)}.topics,.steps{grid-template-columns:repeat(3,1fr)}.links a{font-size:14px;padding:10px 8px}.brand{font-size:22px}.brand small{display:none}}@media(max-width:860px){.nav{min-height:78px;flex-wrap:wrap}.menu{display:block}.links{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding-bottom:16px}.links.open{display:flex}.links a{font-size:18px;padding:14px}.hero-grid,.split,.footer-grid{grid-template-columns:1fr;gap:36px}.hero-art{min-height:285px}.hero-art img{width:210px}.halo{width:260px;height:260px}.topics,.steps{grid-template-columns:1fr}.hero{padding:42px 0}.section{padding:58px 0}.hero-art .art-note{bottom:-14px}.payment-layout .split{grid-template-columns:1fr}.payment-layout img{width:100px}.payment-layout .owl-card{display:none}}@media(max-width:540px){.wrap{width:calc(100% - 32px)}.grid{grid-template-columns:1fr}.row{grid-template-columns:1fr;gap:0}.actions{flex-direction:column}.actions .btn{width:100%}.hero-art{min-height:245px}.hero-art img{width:180px}.halo{width:225px;height:225px}.hero .lead{font-size:20px}.heading{text-align:left}.form,.card,.promise{padding:24px}.trust .wrap{justify-content:flex-start;gap:8px 20px;font-size:15px}.sticky-actions{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90;padding:10px 14px max(10px,env(safe-area-inset-bottom));gap:10px;background:var(--cream);border-top:1px solid var(--line)}.sticky-actions .btn{flex:1;font-size:16px;padding:12px;min-height:50px}body{padding-bottom:78px}footer{padding-bottom:40px}.brand{font-size:24px}.brand img{width:48px;height:48px}.prose p,.prose li{font-size:19px}.section.payment-layout{padding-top:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art img{transform:none!important;will-change:auto}}@media print{header,.sticky-actions,.actions,.cal-frame,.menu{display:none!important}body{padding:0;background:#fff}footer{background:#fff;color:#000}footer p,footer a{color:#000}}
.prose>a.card{display:block;text-decoration:none;margin:20px 0}.prose>a.card h2{margin:0 0 12px}.prose>a.card p{margin:0}.prose>a.card:hover{border-color:var(--teal)}

.introduction-video{margin-top:24px}.video-frame{aspect-ratio:16/9;background:#124d41;border-radius:16px;overflow:hidden}.video-frame iframe{width:100%;height:100%;border:0;display:block}

.video-frame{min-height:200px}

.service-photo{margin:0;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:var(--mint)}.service-photo>img{display:block;width:100%;height:auto}.service-photo figcaption{padding:26px}.service-photo h3{margin:0 0 12px}.service-photo p{margin:0}

.introduction-home{max-width:900px}.introduction-home .lead{max-width:760px}.introduction-home>.btn{margin-top:12px}.introduction-home .introduction-video{max-width:800px}

/* Readability: stronger strokes and comfortably sized supporting text. */
body{font-size:1.25rem;font-weight:500;line-height:1.7}p{color:var(--muted)}h1,h2,h3{font-weight:700}.card p,.price-card ul,.price-card .btn,.price small,.small,.fine,.article-meta,.footer-links,footer p,.copyright,.art-note{font-size:1.125rem!important}.eyebrow{font-size:1rem}.trust .wrap{font-size:1.125rem}.brand small{font-size:.875rem}.lead,.heading p{font-size:1.375rem}.links a{font-size:1rem}.prose p,.prose li{font-size:1.25rem}.price-card .btn{white-space:normal}.sticky-actions .btn{font-size:1.125rem}.btn{overflow-wrap:anywhere}.price{font-size:2.875rem}footer :focus-visible,.promise :focus-visible{outline-color:#fff}
@media(max-width:860px){.links a{font-size:1.25rem}.hero .lead{font-size:1.25rem}.prose p,.prose li{font-size:1.25rem}.sticky-actions .btn{font-size:1.125rem}.trust .wrap{font-size:1.125rem}}

.testimonials{grid-template-columns:repeat(3,minmax(0,1fr))}.testimonial{margin:0}.testimonial blockquote{margin:14px 0 24px}.testimonial blockquote p{font-size:1.25rem}.testimonial figcaption{font-size:1.125rem}.testimonial-stars{color:var(--deep);font-size:1.5rem;letter-spacing:.08em}.review-invite{margin:38px auto 0;max-width:900px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:18px}.review-invite .small{margin:0}@media(max-width:860px){.testimonials{grid-template-columns:1fr}}

/* Keep contact fields aligned when labels wrap or text is enlarged. */
.form .row{grid-template-columns:minmax(0,1fr);gap:0}.form .field{min-width:0}.form select{-webkit-appearance:none;appearance:none;font:inherit;min-height:56px;padding-right:44px;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2716%27%20height%3D%2710%27%20viewBox%3D%270%200%2016%2010%27%3E%3Cpath%20d%3D%27M2%202l6%206%206-6%27%20fill%3D%27none%27%20stroke%3D%27%231c1c1e%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%2F%3E%3C%2Fsvg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px 10px}
@media(forced-colors:active){.form select{-webkit-appearance:auto;appearance:auto;background-image:none}}
