@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/dm-sans.woff2') format('woff2')}
@font-face{font-family:'DM Serif Display';font-style:normal;font-weight:400;font-display:swap;src:url('assets/dm-serif.woff2') format('woff2')}
@font-face{font-family:'DM Serif Display';font-style:italic;font-weight:400;font-display:swap;src:url('assets/dm-serif-italic.woff2') format('woff2')}

:root{--forest:#214c43;--forest-deep:#173c34;--ink:#243f38;--muted:#69766f;--sage:#7b9374;--cream:#f6f7f1;--pale:#edf1e7;--line:#dde3d9;--white:#fff;--serif:'DM Serif Display',Georgia,serif;--sans:'DM Sans','Segoe UI',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:108px}
body{margin:0;font-family:var(--sans);font-size:15px;line-height:1.6;color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,input,select{font:inherit}
button,a,input,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button{color:inherit}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,summary,a,input,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #558463;outline-offset:5px}
::selection{background:#dbe7c6;color:var(--forest-deep)}
h1,h2,h3,p,figure{margin:0}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-1.4px;line-height:1.15}
h2{font-size:46px}
h1 em,h2 em{color:var(--sage);font-weight:400}
h3{line-height:1.3}
[hidden]{display:none!important}
.container{width:min(1240px,calc(100% - 112px));margin-inline:auto}
.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}
.skip-link{position:fixed;top:-100px;left:24px;padding:12px 20px;background:var(--forest);color:white;z-index:200}
.skip-link:focus{top:12px}
.eyebrow{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;display:flex;align-items:center;gap:10px;line-height:1.5;margin-bottom:22px;color:var(--forest)}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:100%;background:#819772;flex-shrink:0}
.button{border:1px solid var(--forest);background:var(--forest);color:white;display:inline-flex;align-items:center;justify-content:center;gap:23px;border-radius:6px;padding:17px 25px;font-size:13px;font-weight:600;line-height:1.45;transition:background .2s,transform .2s,box-shadow .2s;min-height:54px}
.button .icon{width:18px;height:18px}
.button:hover{background:var(--forest-deep);transform:translateY(-2px);box-shadow:0 6px 18px #214c4314}
.button-small{padding:12px 17px;font-size:12px;min-height:44px;gap:15px}
.text-link{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:8px 0;border:0;background:transparent;font-size:12px;font-weight:600;color:var(--forest);line-height:1.5}
.text-link .icon{width:17px;height:17px;transition:transform .2s}
.text-link:hover .icon{transform:translate(3px,-1px)}
.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.body-copy{color:var(--muted);font-size:14px;line-height:1.9}
.full-width{width:100%}

.utility-bar{background:var(--forest);color:#e0e8dd;font-size:10px;letter-spacing:.2px}
.utility-inner{height:35px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.utility-inner>span,.utility-inner>a{display:flex;align-items:center;gap:8px}
.utility-inner .icon{width:12px;height:12px}
.utility-message{opacity:.85}
.utility-inner a:hover{text-decoration:underline}
.site-header{position:sticky;top:0;z-index:30;background:#fffffffa;border-bottom:1px solid #e7eae3;backdrop-filter:blur(12px)}
.header-inner{height:96px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}
.brand-mark{width:61px;height:61px;object-fit:contain;mix-blend-mode:multiply}
.brand-text{display:flex;flex-direction:column;line-height:1.4}
.brand-text strong{font-size:14px;font-weight:650;letter-spacing:-.4px}
.brand-text>span{font-size:11px;color:var(--muted);margin-top:4px;letter-spacing:.1px}
.main-nav{display:flex;align-items:center;gap:26px;height:100%}
.main-nav a{display:flex;align-items:center;position:relative;height:100%;font-size:11px;font-weight:500;color:#68736d;white-space:nowrap}
.main-nav a:hover,.main-nav a.active{color:var(--forest)}
.main-nav a.active::after{content:'';position:absolute;left:0;right:0;bottom:26px;height:2px;background:var(--forest)}
.menu-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:5px;background:transparent}

.hero{background:var(--cream);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:52px;align-items:center;padding-top:63px;padding-bottom:66px}
.hero-copy{padding-bottom:3px}
.hero .eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:26px}
.hero h1{font-size:clamp(55px,5.3vw,76px);line-height:1.075;letter-spacing:-2.2px}
.hero-description{font-size:15px;line-height:1.85;color:var(--muted);max-width:410px;margin-top:24px}
.hero-actions{display:flex;align-items:center;gap:27px;margin-top:30px}
.hero-actions .text-link{font-size:12px}
.hero-assurances{display:flex;gap:26px;margin-top:30px;font-size:10px;color:#647169}
.hero-assurances>span{display:flex;align-items:center;gap:7px}
.hero-assurances .icon{width:13px;height:13px;color:#778c67;stroke-width:2}
.hero-visual{position:relative;align-self:stretch;min-height:493px;padding-top:5px;padding-bottom:18px}
.hero-photo{position:relative;height:100%;min-height:475px;border-radius:150px 16px 16px 16px;overflow:hidden;isolation:isolate;background:#c8d1c6}
.hero-photo>img{height:100%;width:100%;position:absolute;inset:0;object-fit:cover;object-position:48% center}
.hero-photo::after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,#1b2e2645);z-index:0}
.hero-photo figcaption{position:absolute;bottom:15px;right:16px;font-size:8px;color:white;letter-spacing:.5px;z-index:1;text-shadow:0 1px 3px #000}
.visual-orbit{position:absolute;width:320px;height:320px;border:1px solid #dde3d5;border-radius:50%;top:-32px;right:-60px}
.visual-orbit::after{content:'';position:absolute;inset:18px;border:1px solid #dde3d5;border-radius:50%}
.care-stamp{position:absolute;top:-15px;right:-24px;width:105px;height:105px;background:#e2e8d6;border:6px solid var(--cream);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;color:var(--forest);transform:rotate(9deg);box-shadow:0 3px 15px #253e3506}
.care-stamp .icon{width:26px;height:26px;stroke-width:1.3}
.care-stamp span{font-size:8px;line-height:1.6;font-weight:700;letter-spacing:1.4px;text-align:center}
.care-note{position:absolute;bottom:45px;left:-32px;display:flex;align-items:center;gap:15px;background:white;border-radius:9px;padding:19px 23px;box-shadow:0 12px 36px #233f3514}
.care-note-icon{display:flex;align-items:center;justify-content:center;background:var(--pale);width:42px;height:42px;border-radius:50%;color:var(--forest)}
.care-note-icon .icon{width:23px;height:23px}
.care-note strong{display:block;font-size:12px;font-weight:600}
.care-note div>span{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.photo-index{position:absolute;right:0;bottom:-12px;font-size:8px;letter-spacing:1.6px;color:#798377}
.care-rail{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dce2d5;padding:27px 0 30px}
.care-rail>a{display:flex;align-items:center;gap:17px;padding:2px 29px;border-right:1px solid #dce2d5}
.care-rail>a:first-child{padding-left:0}
.care-rail>a:last-child{border-right:0;padding-right:0}
.care-rail>a>.icon{width:30px;height:30px;stroke-width:1.3;color:#6f866c}
.care-rail strong{font-size:12px;font-weight:600;display:block}
.care-rail small{font-size:10px;color:var(--muted);display:block;margin-top:2px}
.care-rail .icon.rail-arrow{width:15px;height:15px;margin-left:auto;transition:transform .2s}
.care-rail>a:hover .rail-arrow{transform:translate(3px,-3px)}

.section{padding-block:91px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:39px}
.section-heading .eyebrow{margin-bottom:16px}
.section-intro{font-size:12px;line-height:1.9;color:var(--muted);padding-bottom:5px}
.specialty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.specialty-card{text-align:left;background:white;border:1px solid var(--line);border-radius:10px;padding:26px 24px 22px;display:flex;flex-direction:column;transition:transform .25s,background .25s,border-color .25s,box-shadow .25s}
.specialty-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:29px}
.specialty-icon{display:inline-flex;align-items:center;justify-content:center;width:49px;height:49px;border-radius:50%}
.specialty-icon .icon{width:25px;height:25px;stroke-width:1.4}
.sage{background:#eef2e7;color:#668359}
.rose{background:#f7edeb;color:#ac7871}
.blue{background:#ecf1f5;color:#6b8b9d}
.sand{background:#f5f0e3;color:#a08751}
.specialty-number{font-size:10px;letter-spacing:1px;color:#a3aaa0}
.specialty-card h3{font-size:17px;font-weight:500;letter-spacing:-.35px;margin-bottom:13px}
.specialty-card>p{font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:27px}
.card-link{margin-top:auto;border-top:1px solid #e9ece5;padding-top:19px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:600;gap:8px}
.card-link .icon{width:15px;height:15px}
.specialty-card:hover{background:#f8faf5;border-color:#b2c2a8;transform:translateY(-5px);box-shadow:0 10px 24px #2c503908}
.specialties-help{display:flex;justify-content:center;align-items:center;gap:12px;font-size:11px;color:var(--muted);margin-top:24px}
.specialties-help .text-link{font-size:11px;gap:9px}

.attention{padding-top:17px;padding-bottom:96px}
.attention-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}
.care-journey{background:var(--forest);color:#fff;position:relative;border-radius:15px;padding:44px 45px 42px;overflow:hidden;isolation:isolate}
.care-journey .eyebrow{color:#cbdac1;font-size:9px;letter-spacing:1.8px;margin-bottom:19px}
.care-journey h2{font-size:43px;line-height:1.17;color:#fff}
.care-journey h2 em{color:#c3d0ac}
.care-journey>p{font-size:12px;max-width:250px;color:#cbd7ce;line-height:1.8;margin-top:20px}
.journey-steps{margin:29px 0 0;padding:0;list-style:none;position:relative}
.journey-steps::before{content:'';position:absolute;left:17px;top:25px;bottom:35px;width:1px;background:#668776}
.journey-steps li{display:flex;align-items:center;gap:18px;margin-top:24px;position:relative}
.step-number{background:var(--forest);display:flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #7a9984;color:#dce5d2;border-radius:50%;font-size:10px;flex-shrink:0}
.journey-steps strong{font-size:13px;font-weight:500;display:block;line-height:1.3}
.journey-steps li div>span{font-size:10px;display:block;margin-top:4px;color:#bdd0c2}
.journey-heart{position:absolute;bottom:-19px;right:-62px;width:225px;height:190px;color:#a9c795;opacity:.14;transform:rotate(-26deg);z-index:-1}
.attention-copy .eyebrow{margin-bottom:19px}
.attention-copy h2{font-size:42px}
.attention-copy>.body-copy{margin-top:21px;font-size:13px}
.attention-accordion{margin:25px 0 16px}
details{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:13px;font-weight:500;padding:20px 0;min-height:60px}
summary::-webkit-details-marker{display:none}
summary>span{display:flex;align-items:center;gap:13px}
summary>span .icon{width:21px;height:21px;color:#7a8e71}
.accordion-plus{width:16px;height:16px;transition:transform .2s}
details[open] .accordion-plus{transform:rotate(45deg)}
.details-body{padding:0 24px 22px 34px;color:var(--muted);font-size:12px;line-height:1.9}
summary:hover{color:#557c58}
.attention-copy>.text-link{margin-top:6px;font-size:11px}

.digital-section{background:var(--cream);overflow:hidden;padding-block:78px}
.digital-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:85px}
.digital-copy .eyebrow{font-size:9px;margin-bottom:19px}
.digital-copy h2{font-size:44px}
.digital-copy>.body-copy{font-size:13px;margin-top:22px;max-width:435px}
.digital-benefits{list-style:none;padding:0;margin:30px 0 0}
.digital-benefits li{display:flex;align-items:center;gap:15px;margin-top:20px}
.benefit-icon{width:35px;height:35px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.benefit-icon .icon{width:25px;height:25px;color:#83936c;stroke-width:1.4}
.digital-benefits strong{font-weight:600;font-size:12px}
.digital-benefits p{font-size:11px;color:var(--muted);margin-top:1px}
.record-illustration{position:relative;min-height:438px;display:flex;align-items:center;justify-content:center}
.record-orbit{position:absolute;width:440px;height:440px;border:1px solid #e1e7d8;border-radius:50%}
.orbit-two{width:345px;height:345px}
.record-sheet{position:relative;width:350px;background:white;border-radius:10px;padding:24px 25px 0;box-shadow:0 18px 65px #4565430b;transform:rotate(-3deg);border:1px solid #e8ecdf}
.record-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:19px;border-bottom:1px solid #edf0e8}
.record-logo{font-size:20px;font-family:var(--serif);letter-spacing:-.4px}
.record-logo>span{display:inline-block;font-family:var(--sans);font-size:8px;letter-spacing:.1px;color:#8b9387;vertical-align:middle;margin-left:11px;padding-left:11px;border-left:1px solid #dfe5d9}
.record-header>.icon{width:18px;height:18px;color:#779767}
.record-title{display:flex;align-items:center;gap:12px;margin-block:24px}
.record-avatar{background:#eef2e6;border-radius:50%;width:42px;height:42px;display:flex;align-items:center;justify-content:center}
.record-title strong{display:block;font-size:12px;font-weight:600}
.record-title small{display:block;font-size:8px;color:#939b8e;margin-top:2px}
.record-row{border:1px solid #eaeee5;border-radius:6px;display:flex;align-items:center;gap:11px;padding:13px 12px;margin-bottom:10px}
.record-row-icon{width:27px;height:27px;display:flex;align-items:center;justify-content:center;color:#7b9270}
.record-row-icon .icon{width:19px;height:19px;stroke-width:1.5}
.record-row strong{display:block;font-size:10px;font-weight:500}
.record-row small{display:block;font-size:8px;color:#8e9788;margin-top:1px}
.record-tick{margin-left:auto;border-radius:50%;display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:#eff4e8;color:#85a273}
.record-tick .icon{width:10px;height:10px}
.record-footer{display:flex;align-items:center;justify-content:center;gap:6px;border-top:1px solid #edf0e8;margin-top:21px;padding:13px 0;font-size:8px;color:#8b9782}
.record-footer .status-dot{width:5px;height:5px}
.privacy-note{position:absolute;bottom:26px;right:-1px;background:var(--forest);color:#e0e9d6;padding:16px 22px;display:flex;align-items:center;gap:13px;border-radius:7px;box-shadow:0 10px 20px #24473515;transform:rotate(2deg)}
.privacy-note>.icon{width:27px;height:27px;stroke-width:1.3}
.privacy-note>span{font-size:10px;line-height:1.7}
.privacy-note strong{font-weight:500}
.illustration-caption{position:absolute;bottom:-25px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;color:#8c9983;letter-spacing:.6px}

.contact-section{padding-bottom:75px}
.contact-panel{display:grid;grid-template-columns:1fr 1fr;background:#eaf0df;border-radius:14px;padding:54px 64px;gap:70px;position:relative}
.contact-intro .eyebrow{font-size:9px;margin-bottom:20px}
.contact-intro h2{font-size:48px}
.contact-intro h2 em{color:#7d936f}
.contact-intro>p:not(.eyebrow){font-size:12px;color:#6a7861;margin:20px 0 26px;line-height:1.9}
.contact-intro .button{min-height:48px;font-size:12px;padding:14px 20px}
.contact-info{border-left:1px solid #d0dcc5;padding-left:49px;align-self:center}
.contact-item{display:flex;align-items:flex-start;gap:15px}
.contact-icon{color:#789466;flex-shrink:0}
.contact-icon .icon{width:22px;height:22px;stroke-width:1.4}
.contact-label{display:block;font-size:9px;color:#66775e;margin-bottom:11px}
.contact-item h3{font-size:16px;line-height:1.45;font-weight:500;letter-spacing:-.3px}
.contact-item p{font-size:11px;line-height:1.9;margin-top:9px;color:#6b7862;max-width:295px}
.contact-item .text-link{font-size:10px;margin-top:7px;gap:12px}
.contact-item .text-link .icon{width:14px;height:14px}
.contact-divider{height:1px;background:#d4dfc9;margin:24px 0}
.contact-phone{font-size:25px;letter-spacing:-.8px;line-height:1.2;display:block}
.contact-phone:hover{text-decoration:underline;text-underline-offset:5px}
.faq-section{padding:0 0 78px}
.faq-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:90px}
.faq-grid .eyebrow{font-size:9px;margin-bottom:16px}
.faq-grid h2{font-size:35px}
.faq-list summary{font-size:12px;min-height:65px}
.faq-list .details-body{padding-left:0}
.site-footer{background:var(--cream);border-top:1px solid #e9ede4}
.footer-top{display:flex;align-items:center;justify-content:space-between;padding-block:28px;border-bottom:1px solid #e0e5db;gap:30px}
.footer-top .brand-mark{width:53px;height:53px}
.footer-top .brand-text strong{font-size:12px}
.footer-top .brand-text>span{font-size:10px}
.footer-top>p{font-family:var(--serif);font-size:20px;color:#7d8f72;letter-spacing:-.4px}
.back-top{border:1px solid #cfd9c6;border-radius:50%;width:37px;height:37px;display:flex;align-items:center;justify-content:center}
.back-top .icon{transform:rotate(-90deg);width:16px;height:16px}
.back-top:hover{background:#e5ecd9}
.footer-bottom{font-size:8px;color:#818d78;display:flex;justify-content:space-between;gap:25px;padding-block:20px}
.footer-bottom a{text-decoration:underline;text-underline-offset:3px}

.modal{border:1px solid var(--line);border-radius:16px;background:#fffefb;color:var(--ink);width:min(510px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:40px;box-shadow:0 25px 100px #112b3b33;overscroll-behavior:contain}
.modal::backdrop{background:#112d2690;backdrop-filter:blur(4px)}
.modal[open]{animation:modal-in .2s ease-out}
.modal-close{position:absolute;top:16px;right:16px;border:0;background:#edf1e7;border-radius:50%;width:34px;height:34px;display:flex;justify-content:center;align-items:center}
.modal-close .icon{width:17px;height:17px}
.modal-close:hover{background:#e0e8d7}
.modal h2{font-size:39px;line-height:1.13;margin-bottom:21px}
.modal .eyebrow{font-size:9px;margin-block:21px 12px}
.modal .body-copy{font-size:13px;line-height:1.8}
.modal-specialty-icon{width:56px;height:56px}
.specialty-features{list-style:none;margin:24px 0 21px;padding:0}
.specialty-features li{display:flex;align-items:center;gap:10px;font-size:12px;margin:12px 0}
.specialty-features .icon{width:14px;height:14px;color:#82986d}
.modal-note{font-size:11px;line-height:1.7;color:var(--muted);padding-top:16px;border-top:1px solid var(--line);margin-bottom:23px}
.booking-progress{display:flex;align-items:center;gap:13px;margin:1px 28px 24px 0;font-size:9px;color:#8d9588}
.booking-progress .current{color:var(--forest);font-weight:700}
.progress-line{height:1px;flex:1;background:#dfe6d7;min-width:20px}
.booking-modal h2{font-size:44px}
.field-label{display:block;font-size:11px;font-weight:600;margin:22px 0 7px}
.field-label>span{font-weight:400;color:#85907e}
select,input[type=date]{width:100%;border:1px solid #d7dfd1;border-radius:6px;background:white;color:var(--ink);height:47px;padding:10px 12px;font-size:12px;min-width:0}
select:focus,input[type=date]:focus{border-color:#809778}
.field-help{font-size:10px;color:#829078;display:block;margin-top:6px}
.time-preference{padding:0;margin:0 0 27px;border:0;min-width:0}
.time-preference .field-label{padding:0;margin-bottom:10px}
.radio-options{display:flex;gap:8px}
.radio-options label{position:relative;flex:1;cursor:pointer}
.radio-options input{position:absolute;opacity:0;width:1px;height:1px}
.radio-options span{display:block;border:1px solid #dce3d5;border-radius:6px;text-align:center;padding:10px 6px;font-size:10px;background:white}
.radio-options input:checked+span{background:#eaf0df;border-color:#799067;color:var(--forest);font-weight:600}
.radio-options input:focus-visible+span{outline:3px solid #558463;outline-offset:3px}
.booking-footnote{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:9px;color:#78866e}
.booking-footnote .icon{width:13px;height:13px}
.request-message{white-space:pre-line;font-size:13px;line-height:1.9;border:1px solid #dde5d3;border-radius:9px;background:#f1f5ea;padding:21px;margin:22px 0}
.confirmation-note{font-size:11px;color:var(--muted);display:flex;align-items:flex-start;gap:10px;margin-bottom:24px}
.confirmation-note .icon{width:18px;height:18px;margin-top:2px}
.confirmation-note strong{font-weight:600}
.review-actions{display:flex;justify-content:space-between;gap:10px;margin-top:15px}
.review-actions .text-link{font-size:11px}
.review-actions .icon{width:14px;height:14px}
.copy-status{font-size:10px;line-height:1.8;color:#5c784d;min-height:18px;margin-top:5px}
.noscript-note{padding:14px 25px;background:#eef1e6;color:var(--forest);text-align:center;font-size:12px}
@keyframes modal-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

@media(min-width:1600px){.container{width:min(1320px,calc(100% - 160px))}.hero-grid{gap:75px;padding-block:78px}.hero-visual{min-height:530px}.hero h1{font-size:83px}.main-nav{gap:32px}.main-nav a{font-size:12px}.hero-description{font-size:16px;max-width:430px}.hero-actions{margin-top:34px}}
@media(max-width:1199px){.container{width:calc(100% - 72px)}.header-inner{gap:16px;height:86px}.brand-mark{width:50px;height:50px}.brand-text strong{font-size:12px}.brand-text>span{font-size:10px}.main-nav{gap:18px}.main-nav a{font-size:10px}.button-small{font-size:10px;padding-inline:13px;gap:10px}.hero-grid{gap:35px}.hero h1{font-size:63px}.hero-description{font-size:14px;max-width:365px}.hero-actions{gap:19px}.hero-actions .button{font-size:11px;padding-inline:20px;gap:15px}.hero-actions .text-link{font-size:11px}.hero-visual{min-height:462px}.hero-photo{min-height:440px;border-top-left-radius:120px}.care-stamp{right:-13px;width:91px;height:91px}.care-stamp span{font-size:7px}.care-note{left:-20px;padding:15px 17px;gap:11px}.care-note strong{font-size:11px}.care-note div>span{font-size:9px}.care-note-icon{width:37px;height:37px}.care-rail>a{padding-inline:20px;gap:11px}.care-rail strong{font-size:10px}.care-rail small{font-size:9px}.care-rail>a>.icon{width:25px;height:25px}h2{font-size:41px}.specialty-card{padding:24px 19px 20px}.specialty-card h3{font-size:16px}.specialty-card>p{font-size:11px}.card-link{font-size:9px}.attention-grid{gap:50px}.care-journey{padding:40px 35px}.care-journey h2{font-size:39px}.attention-copy h2{font-size:37px}.digital-grid{gap:45px}.digital-copy h2{font-size:39px}.contact-panel{padding:48px;gap:40px}.contact-info{padding-left:35px}.contact-intro h2{font-size:43px}.faq-grid{gap:50px}}
@media(max-width:1000px){.header-book{display:none}.hero h1{font-size:57px}.hero-actions{align-items:flex-start;flex-direction:column;gap:11px}.hero-actions .text-link{padding:4px 0}.hero-assurances{gap:14px;font-size:9px;margin-top:23px}.hero-visual{min-height:450px}.hero-grid{gap:30px;padding-top:50px;padding-bottom:50px}.care-note{bottom:48px;left:-17px}.care-note strong{font-size:10px}.care-note div>span{font-size:8px}.care-note-icon{width:31px;height:31px}.care-note-icon .icon{width:19px;height:19px}.care-rail>a{gap:10px}.care-rail .rail-arrow{display:none}.section-heading{align-items:start}.section-intro{max-width:230px;margin-top:33px}.specialty-grid{gap:12px}.specialty-card{padding:22px 16px 18px}.specialty-card h3{font-size:14px}.specialty-card>p{font-size:10px}.card-link{font-size:8px}.attention-grid{gap:35px}.care-journey{padding:36px 27px}.care-journey h2{font-size:35px}.attention-copy h2{font-size:34px}.attention-copy>.body-copy{font-size:12px}.journey-steps li{gap:13px}.journey-steps li div>span{font-size:9px}.digital-grid{gap:25px}.digital-copy h2{font-size:35px}.digital-copy>.body-copy{font-size:12px}.record-sheet{width:310px;padding:23px 20px 0}.privacy-note{right:-8px;bottom:35px;padding:13px 16px}.contact-panel{padding:40px;gap:32px}.contact-info{padding-left:25px}.contact-intro h2{font-size:40px}.contact-item{gap:11px}.contact-item h3{font-size:14px}.contact-item p{font-size:10px}.contact-label{font-size:8px}.contact-phone{font-size:23px}.footer-top>p{font-size:17px}}
@media(max-width:760px){html{scroll-padding-top:86px}.container{width:calc(100% - 44px)}.utility-inner{height:31px}.utility-message{display:none!important}.utility-bar{font-size:9px}.header-inner{height:77px;gap:15px}.brand-mark{width:51px;height:51px}.brand-text strong{font-size:12px}.brand-text>span{font-size:10px}.menu-toggle{display:flex}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;box-shadow:0 14px 20px #244b3510;border-bottom:1px solid var(--line);padding:12px 22px 19px;flex-direction:column;gap:0;height:auto;align-items:stretch}.main-nav.open{display:flex}.main-nav a{height:47px;font-size:13px;border-bottom:1px solid #edf0e8}.main-nav a:last-child{border:0}.main-nav a.active::after{display:none}.main-nav a.active{font-weight:700}.hero-grid{grid-template-columns:1fr;gap:35px;padding-top:39px;padding-bottom:39px}.hero-copy{padding-bottom:0}.hero .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:21px}.hero h1{font-size:clamp(48px,8.4vw,68px);line-height:1.08;letter-spacing:-1.6px}.hero-description{font-size:13px;max-width:440px;margin-top:20px}.hero-actions{flex-direction:row;align-items:center;gap:23px;margin-top:25px}.hero-actions .button{font-size:11px;padding:14px 20px;min-height:49px}.hero-actions .text-link{font-size:10px;gap:8px}.hero-assurances{margin-top:22px;font-size:9px;gap:24px}.hero-visual{min-height:360px;margin:4px 4px 0 13px;padding-bottom:15px}.hero-photo{min-height:345px;border-top-left-radius:100px}.hero-photo>img{object-position:center center}.care-stamp{width:85px;height:85px;right:-14px;top:-17px;border-width:5px}.care-stamp .icon{width:22px;height:22px}.care-stamp span{font-size:7px}.care-note{left:-13px;bottom:40px;padding:15px 18px;gap:12px}.care-note strong{font-size:11px}.care-note div>span{font-size:9px}.care-note-icon{width:37px;height:37px}.photo-index{font-size:7px;bottom:-7px;letter-spacing:1px}.care-rail{padding:9px 0 10px;grid-template-columns:1fr}.care-rail>a,.care-rail>a:first-child,.care-rail>a:last-child{padding:17px 2px;border-right:0;border-bottom:1px solid #dce2d5}.care-rail>a:last-child{border-bottom:0}.care-rail>a>.icon{width:25px;height:25px;margin-right:9px}.care-rail strong{font-size:11px}.care-rail small{font-size:9px}.care-rail .icon.rail-arrow{display:block;width:15px;height:15px;margin-right:2px}.section{padding-block:59px}.section-heading{display:block;margin-bottom:27px}.section-heading .eyebrow{margin-bottom:15px}.eyebrow{font-size:8px;letter-spacing:1.6px}.section-heading h2{font-size:35px;letter-spacing:-.8px}.section-intro{max-width:100%;font-size:11px;margin-top:18px}.section-intro br{display:none}.specialty-grid{grid-template-columns:repeat(2,1fr);gap:13px}.specialty-card{padding:21px 18px 19px}.specialty-top{margin-bottom:23px}.specialty-icon{width:42px;height:42px}.specialty-icon .icon{width:23px;height:23px}.specialty-number{font-size:9px}.specialty-card h3{font-size:15px}.specialty-card>p{font-size:11px;line-height:1.8;margin-bottom:22px}.card-link{font-size:9px;padding-top:16px}.card-link .icon{width:13px;height:13px}.specialties-help{flex-direction:column;gap:0;text-align:center;font-size:10px;margin-top:23px}.specialties-help .text-link{font-size:11px}.attention{padding-top:3px;padding-bottom:60px}.attention-grid{grid-template-columns:1fr;gap:43px}.care-journey{padding:35px 33px 38px;border-radius:12px}.care-journey h2{font-size:41px}.care-journey>p{max-width:275px}.journey-steps li{gap:18px;margin-top:24px}.journey-steps li div>span{font-size:10px}.journey-heart{width:240px;height:220px;right:-30px;bottom:-17px}.attention-copy h2{font-size:35px}.attention-copy .eyebrow{margin-bottom:15px}.attention-copy>.body-copy{font-size:12px;max-width:500px;margin-top:17px}.attention-accordion{margin-top:20px}.attention-copy>.text-link{font-size:11px}.digital-section{padding-block:53px 74px}.digital-grid{grid-template-columns:1fr;gap:35px}.digital-copy h2{font-size:36px;letter-spacing:-1px}.digital-copy>.body-copy{font-size:12px;max-width:500px;margin-top:20px}.digital-benefits li{gap:13px}.digital-benefits strong{font-size:12px}.digital-benefits p{font-size:11px}.record-illustration{min-height:412px;margin-inline:12px}.record-sheet{width:320px;max-width:100%;padding:24px 23px 0}.privacy-note{right:-7px;bottom:21px;padding:16px 18px}.record-orbit{width:365px;height:365px}.orbit-two{width:295px;height:295px}.illustration-caption{font-size:8px;bottom:-22px}.contact-section{padding-bottom:53px}.contact-panel{padding:33px 26px 31px;grid-template-columns:1fr;gap:30px;border-radius:12px}.contact-intro h2{font-size:42px}.contact-intro>p:not(.eyebrow){font-size:12px;margin-block:17px 24px}.contact-intro .button{font-size:11px}.contact-info{padding:30px 0 0;border-left:0;border-top:1px solid #d0dcc5}.contact-item{gap:15px}.contact-label{font-size:9px;margin-bottom:9px}.contact-item h3{font-size:16px}.contact-item p{font-size:11px}.contact-item .text-link{font-size:10px}.contact-phone{font-size:25px}.contact-divider{margin:24px 0}.faq-section{padding-bottom:55px}.faq-grid{grid-template-columns:1fr;gap:22px}.faq-grid h2{font-size:33px}.faq-grid h2 br{display:none}.faq-list summary{font-size:11px;min-height:65px}.faq-list .details-body{font-size:11px}.footer-top{padding-block:23px;flex-wrap:wrap;gap:12px}.footer-top .brand{order:0}.footer-top>p{font-size:17px;width:100%;order:2;padding-left:5px}.back-top{order:1}.footer-bottom{flex-direction:column;gap:7px;font-size:8px;padding-block:18px}.modal{padding:33px 25px;max-height:calc(100dvh - 32px);width:min(480px,calc(100% - 26px));border-radius:12px}.modal h2{font-size:36px}.booking-modal h2{font-size:41px}.modal .body-copy{font-size:12px}.booking-progress{font-size:8px;gap:10px;margin-top:9px}.modal-close{top:12px;right:12px;width:30px;height:30px}.radio-options{gap:6px}.radio-options span{font-size:9px;padding-inline:5px}.booking-footnote{font-size:8px}.request-message{font-size:12px;padding:18px}.review-actions .text-link{font-size:10px}.confirmation-note{font-size:10px}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.brand-text strong{font-size:11px}.brand-text>span{font-size:9px}.brand-mark{width:43px;height:43px}.hero h1{font-size:47px}.hero-actions{gap:17px}.hero-actions .button{padding-inline:16px;font-size:10px;gap:13px}.hero-actions .text-link{font-size:9px}.hero-assurances{font-size:8px;gap:14px}.hero-visual{min-height:310px}.hero-photo{min-height:295px}.care-stamp{width:73px;height:73px;right:-9px}.care-stamp span{font-size:6px}.care-stamp .icon{width:19px;height:19px}.care-note{padding:13px 14px;gap:10px}.care-note strong{font-size:10px}.care-note div>span{font-size:8px}.care-note-icon{width:32px;height:32px}.section-heading h2{font-size:32px}.specialty-card{padding-inline:14px}.specialty-card h3{font-size:13px}.specialty-card>p{font-size:10px}.card-link{font-size:8px;gap:4px}.card-link .icon{width:11px;height:11px}.specialty-icon{width:36px;height:36px}.specialty-icon .icon{width:21px;height:21px}.care-journey{padding-inline:26px}.care-journey h2{font-size:36px}.attention-copy h2,.digital-copy h2{font-size:32px}.digital-benefits strong{font-size:11px}.digital-benefits p{font-size:10px}.record-sheet{padding-inline:16px}.record-illustration{margin-inline:6px}.privacy-note{right:-5px}.contact-panel{padding:29px 22px}.contact-intro h2{font-size:37px}.contact-item p{font-size:10px}.faq-grid h2{font-size:31px}.footer-top .brand-text strong{font-size:11px}.footer-top .brand-text>span{font-size:9px}.footer-top .brand-mark{width:45px;height:45px}}
/* Keep patient-facing copy comfortably readable on compact screens. */
@media(max-width:760px){.hero-description{font-size:14px}.hero-actions .button{font-size:12px}.hero-actions .text-link{font-size:11px}.hero-assurances{font-size:10px}.care-rail strong{font-size:13px}.care-rail small{font-size:11px}.section-intro{font-size:13px}.specialty-card h3{font-size:16px}.specialty-card>p{font-size:13px}.card-link{font-size:10px}.specialties-help{font-size:11px}.care-journey>p{font-size:13px}.journey-steps strong{font-size:14px}.journey-steps li div>span{font-size:11px}.attention-copy>.body-copy,.digital-copy>.body-copy{font-size:13px}.details-body{font-size:13px}.digital-benefits strong{font-size:13px}.digital-benefits p{font-size:12px}.record-illustration{min-height:460px}.privacy-note{bottom:0}.contact-intro>p:not(.eyebrow){font-size:13px}.contact-label{font-size:11px}.contact-item h3{font-size:17px}.contact-item p{font-size:12px}.contact-item .text-link{font-size:12px}.faq-list summary,.faq-list .details-body{font-size:13px}.footer-bottom{font-size:9px}.modal .body-copy{font-size:13px}.field-label{font-size:12px}select,input[type=date]{font-size:16px}.field-help{font-size:11px}.radio-options span{font-size:11px}.booking-footnote{font-size:10px}.request-message{font-size:13px}.review-actions .text-link{font-size:12px}.confirmation-note{font-size:12px}}
@media(max-width:380px){.hero-actions{gap:15px}.hero-actions .button{font-size:11px}.hero-actions .text-link{font-size:10px}.hero-assurances{font-size:9px}.specialty-card h3{font-size:14px}.specialty-card>p{font-size:12px}.card-link{font-size:9px}.contact-item h3{font-size:16px}.booking-footnote{font-size:9px}}
/* Entradas sutiles activadas al aparecer cada sección en pantalla. */
html.motion-ready [data-reveal]{opacity:0;transform:translate3d(0,22px,0);transition:opacity .72s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms),transform .72s cubic-bezier(.2,.7,.25,1) var(--reveal-delay,0ms);will-change:opacity,transform}
html.motion-ready [data-reveal][data-reveal-from="left"]{transform:translate3d(-24px,0,0)}
html.motion-ready [data-reveal][data-reveal-from="right"]{transform:translate3d(24px,0,0)}
html.motion-ready [data-reveal].is-visible{opacity:1;transform:translate3d(0,0,0);will-change:auto}
.hero-photo img{transform:scale(1);transform-origin:50% 50%}
html.motion-ready .hero-visual.is-visible .hero-photo img{animation:photo-settle 11s cubic-bezier(.2,.65,.35,1) both}
html.motion-ready .hero-visual.is-visible .visual-orbit{animation:orbit-breathe 8s ease-in-out infinite alternate}
html.motion-ready .care-stamp.is-visible{animation:stamp-float 5.5s ease-in-out .8s infinite alternate}
html.motion-ready .care-note.is-visible{transition-delay:240ms}
html.motion-ready .care-journey.is-visible .journey-steps::before{transform:scaleY(1);transform-origin:top;transition:transform 1.1s cubic-bezier(.2,.7,.25,1) 260ms}
html.motion-ready .specialty-card[data-reveal].is-visible:hover{transform:translate3d(0,-5px,0)}
.specialty-icon{transition:transform .32s cubic-bezier(.2,.7,.25,1),box-shadow .32s ease}
.specialty-card:hover .specialty-icon{transform:translateY(-3px) rotate(-4deg);box-shadow:0 7px 16px #29483813}
.button .icon,.card-link .icon{transition:transform .25s ease}
.button:hover .icon,.card-link .icon{transform:translateX(0)}
.button:hover .icon{transform:translateX(3px)}
.specialty-card:hover .card-link .icon{transform:translate(3px,-3px)}
.journey-steps::before{transform:scaleY(0)}
.journey-steps{isolation:isolate}
.care-journey .journey-steps::before{z-index:-1}
@keyframes photo-settle{from{transform:scale(1.035)}to{transform:scale(1.1)}}
@keyframes orbit-breathe{from{transform:rotate(-2deg) scale(.99);opacity:.7}to{transform:rotate(2deg) scale(1.025);opacity:1}}
@keyframes stamp-float{from{transform:translateY(0) rotate(9deg)}to{transform:translateY(-7px) rotate(7deg)}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.specialty-card:hover,.button:hover,html.motion-ready .specialty-card[data-reveal].is-visible:hover,.specialty-card:hover .specialty-icon,.button:hover .icon,.specialty-card:hover .card-link .icon{transform:none;box-shadow:none}html.motion-ready [data-reveal]{opacity:1;transform:none;will-change:auto}.journey-steps::before{transform:none}}

/* Aumentar la lectura del texto auxiliar sin competir con los titulares. */
.utility-bar{font-size:11px}
.main-nav a{font-size:12px}
.eyebrow,.hero .eyebrow,.care-journey .eyebrow,.care-intro .eyebrow,.digital-copy .eyebrow,.contact-intro .eyebrow,.faq-grid .eyebrow{font-size:10px}
.hero-assurances{font-size:11px}
.hero-photo figcaption{font-size:10px}
.care-stamp span{font-size:10px}
.photo-index{font-size:10px}
.care-rail strong{font-size:13px}
.care-rail small{font-size:11px}
.section-intro{font-size:13px}
.specialty-number{font-size:11px}
.specialty-card h3{font-size:17px}
.specialty-card>p{font-size:13px}
.card-link,.specialties-help,.specialties-help .text-link{font-size:11px}
.care-journey>p{font-size:13px}
.journey-steps li div>span{font-size:11px}
.details-body{font-size:13px}
.digital-benefits p{font-size:12px}
.record-logo>span{font-size:10px}
.record-title small,.record-row small{font-size:11px}
.record-row strong{font-size:12px}
.record-footer{font-size:11px}
.illustration-caption{font-size:10px}
.contact-label{font-size:11px}
.contact-item p{font-size:12px}
.contact-item .text-link{font-size:11px}
.faq-list summary,.faq-list .details-body{font-size:13px}
.footer-bottom{font-size:11px}
.booking-progress{font-size:10px}
.field-help,.booking-footnote,.copy-status{font-size:11px}
.radio-options span{font-size:11px}
.review-actions .text-link{font-size:12px}
.confirmation-note{font-size:12px}

@media(max-width:760px){
  .utility-bar{font-size:12px}
  .eyebrow,.hero .eyebrow,.care-journey .eyebrow,.care-intro .eyebrow,.digital-copy .eyebrow,.contact-intro .eyebrow,.faq-grid .eyebrow{font-size:10px}
  .hero-actions .button,.hero-actions .text-link{font-size:12px}
  .hero-assurances{font-size:11px}
  .care-stamp span{font-size:10px}
  .photo-index{font-size:10px}
  .care-rail strong{font-size:13px}
  .care-rail small{font-size:12px}
  .section-intro{font-size:14px;line-height:1.8}
  .specialty-card h3{font-size:15px}
  .specialty-card>p{font-size:13px;line-height:1.85}
  .card-link{font-size:11px}
  .specialties-help,.specialties-help .text-link{font-size:12px}
  .care-journey>p,.journey-steps li div>span,.attention-copy>.body-copy,.digital-copy>.body-copy{font-size:13px}
  .journey-steps strong,.digital-benefits strong{font-size:14px}
  .digital-benefits p{font-size:13px}
  .record-logo>span{font-size:10px}
  .record-title small,.record-row small,.record-row strong,.record-footer,.illustration-caption{font-size:11px}
  .contact-label{font-size:11px}
  .contact-item p,.contact-item .text-link{font-size:13px}
  .faq-list summary,.faq-list .details-body{font-size:14px}
  .footer-bottom{font-size:11px}
  .booking-progress,.field-help,.booking-footnote,.copy-status{font-size:11px}
  .radio-options span{font-size:12px}
  .confirmation-note,.review-actions .text-link{font-size:12px}
}

/* Legibilidad reforzada: aumentar de forma perceptible el texto informativo. */
body{font-size:16px}
.utility-bar{font-size:12px}
.main-nav a{font-size:13px}
.brand-text strong{font-size:14px}
.brand-text>span{font-size:11px}
.eyebrow,.hero .eyebrow,.care-journey .eyebrow,.care-intro .eyebrow,.digital-copy .eyebrow,.contact-intro .eyebrow,.faq-grid .eyebrow{font-size:12px}
.hero-description{font-size:17px;line-height:1.8}
.hero-actions .button,.hero-actions .text-link{font-size:14px}
.hero-assurances{font-size:12px}
.care-stamp span{font-size:11px}
.care-rail strong{font-size:14px}
.care-rail small{font-size:12px}
.section-intro{font-size:16px;line-height:1.8}
.specialty-card h3{font-size:18px}
.specialty-card>p{font-size:15px;line-height:1.8}
.card-link,.specialties-help,.specialties-help .text-link{font-size:12px}
.care-journey>p,.attention-copy>.body-copy,.digital-copy>.body-copy{font-size:15px;line-height:1.8}
.journey-steps strong,.digital-benefits strong{font-size:15px}
.journey-steps li div>span,.digital-benefits p{font-size:13px}
.details-body{font-size:15px;line-height:1.8}
.record-logo>span,.record-title small,.record-row small,.record-footer{font-size:12px}
.record-title strong,.record-row strong{font-size:13px}
.privacy-note>span{font-size:12px}
.illustration-caption{font-size:11px}
.contact-intro>p:not(.eyebrow),.contact-item p{font-size:15px;line-height:1.8}
.contact-label{font-size:12px}
.contact-item .text-link{font-size:12px}
.faq-list summary,.faq-list .details-body{font-size:15px}
.footer-bottom{font-size:12px}
.modal .body-copy{font-size:14px}
.field-label{font-size:13px}
.field-help,.booking-progress,.booking-footnote,.copy-status{font-size:12px}
.radio-options span{font-size:12px}
.review-actions .text-link,.confirmation-note{font-size:13px}

@media(max-width:760px){
  .brand-text strong{font-size:13px}
  .brand-text>span{font-size:11px}
  .hero-description{font-size:17px}
  .hero-actions .button,.hero-actions .text-link{font-size:14px}
  .hero-assurances{font-size:12px}
  .section-intro{font-size:17px}
  .specialty-card h3{font-size:17px}
  .specialty-card>p{font-size:16px}
  .care-journey>p,.attention-copy>.body-copy,.digital-copy>.body-copy,.details-body{font-size:16px}
  .journey-steps li div>span,.digital-benefits p{font-size:14px}
  .record-logo>span,.record-title small,.record-row small,.record-footer{font-size:12px}
  .contact-intro>p:not(.eyebrow),.contact-item p{font-size:16px}
  .faq-list summary,.faq-list .details-body{font-size:16px}
  .footer-bottom{font-size:12px}
}
