:root{--forest:#344c3d;--forest-deep:#253d32;--ink:#27362f;--copy:#53665c;--muted:#6e7f73;--cream:#faf6f0;--cream-strong:#f6eee5;--peach:#edb196;--coral:#ff9c82;--pale-coral:#fce2d7;--sage:#d9e5de;--mist:#f0f4ef;--line:#e4e8e1;--white:#fff;--radius:18px;--max:1170px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Poppins,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:15px;line-height:1.75;color:var(--ink);background:var(--white);text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}a,button,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button{cursor:pointer}strong,b{font-weight:600}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:1.22;letter-spacing:-.055em}h1{font-weight:600}h2{font-size:clamp(30px,3.4vw,48px);font-weight:600}h2 em{font-family:Georgia,serif;font-weight:400;color:#ca896f;letter-spacing:-.065em}h3{font-weight:600}p{margin-bottom:1em}p:last-child{margin-bottom:0}:focus-visible{outline:3px solid #c27259;outline-offset:4px}.container{width:min(var(--max),calc(100% - 56px));margin:0 auto}.skip-link{position:fixed;z-index:1000;left:12px;top:-80px;background:#fff;color:#111;padding:10px 16px;border:2px solid var(--forest)}.skip-link:focus{top:12px}.topbar{background:var(--forest);color:#eff5ef;font-size:11px}.topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar a{color:#eaf6ee;text-decoration:underline;text-underline-offset:3px}.top-dot{display:inline-block;width:6px;height:6px;background:#ffb39d;border-radius:50%;margin-right:8px;vertical-align:middle}.header{position:sticky;top:0;background:rgba(255,253,249,.97);z-index:20;border-bottom:1px solid #ece8e0;backdrop-filter:blur(13px)}.header-inner{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:26px}.identity{display:flex;align-items:center;gap:13px;min-width:210px}.monogram{height:42px;width:42px;border-radius:50%;display:grid;place-content:center;color:var(--forest);background:#f3e7db;font-family:Georgia,serif;font-size:25px;line-height:1;letter-spacing:-.1em}.monogram span{color:#e38e79}.identity-copy{display:flex;flex-direction:column;line-height:1.35}.identity-copy strong{font-size:14px;letter-spacing:-.03em}.identity-copy small{font-size:10px;letter-spacing:.025em;color:var(--muted);margin-top:4px}.desktop-nav{display:flex;align-items:center;gap:23px}.desktop-nav a{font-size:11px;font-weight:600;color:#495d51;white-space:nowrap}.desktop-nav a:hover,.inline-link:hover,.footer a:hover{color:#bb735d}.button{display:inline-flex;gap:14px;justify-content:center;align-items:center;text-align:center;min-height:50px;padding:14px 22px;font-size:12px;line-height:1.3;font-weight:600;border-radius:9px;border:1px solid transparent;transition:transform .2s ease,background-color .2s ease;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-solid{background:var(--forest);color:white}.button-solid:hover{background:var(--forest-deep)}.button-accent{background:var(--coral);color:#243d32}.button-accent:hover{background:#ffa88f}.button-outline{border-color:#bdc7bc;color:var(--forest);background:transparent}.button-outline:hover{background:#f4f7f1}.button-light{color:white;border-color:rgba(255,255,255,.55);background:transparent}.button-light:hover{background:#ffffff1a}.nav-cta{min-height:43px;padding:10px 16px;white-space:nowrap}.hero{background:linear-gradient(112deg,#fdfaf6 0%,#fcf5ec 55%,#f7ece3 100%);overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:35px;min-height:595px}.hero-text{padding:70px 0 68px;position:relative;z-index:1}.eyebrow,.section-label{color:#99654f;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow-mark{width:24px;height:2px;background:#cf9076}.hero h1{font-size:clamp(38px,4.8vw,68px);letter-spacing:-.064em;line-height:1.11;margin:27px 0 21px;max-width:730px}.hero h1 span{display:block;font-family:Georgia,serif;font-weight:400;font-style:italic;color:#bc846d;letter-spacing:-.065em;margin-top:2px}.hero-tagline{font-size:clamp(17px,1.5vw,19px);font-weight:500;line-height:1.6;max-width:540px;margin:0 0 16px}.hero-intro{color:#5f7066;max-width:568px;font-size:13px;line-height:1.93}.hero-intro strong{color:var(--forest)}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:27px 0 18px}.hero-micro{font-size:10px;font-weight:500;color:#64766a;display:flex;align-items:center;gap:11px;flex-wrap:wrap}.mid-dot{height:3px;width:3px;border-radius:50%;background:#9aac9e}.hero-art{align-self:stretch;display:flex;align-items:flex-end;justify-content:center;min-height:545px;position:relative}.photo-arch{width:min(100%,500px);height:505px;position:relative;overflow:hidden;border-radius:260px 260px 13px 13px;background:linear-gradient(132deg,#e5c7b9,#f2d6c5 45%,#c3d5ca 100%)}.arch-glow{position:absolute;top:-65px;left:-45px;width:330px;height:330px;border-radius:50%;background:#fff6;filter:blur(30px)}.photo-arch img{position:absolute;width:100%;height:97%;bottom:-2px;left:50%;transform:translateX(-50%);object-fit:contain;object-position:bottom center}.hero-note{position:absolute;bottom:28px;left:-29px;display:flex;align-items:center;gap:14px;background:#fff;padding:16px 19px;border:1px solid #f3eee6;border-radius:12px;max-width:260px;box-shadow:0 16px 30px #343f3219;font-size:11px;line-height:1.5;color:var(--forest)}.note-icon{white-space:nowrap;font-size:11px;letter-spacing:-.04em;font-weight:700;color:#ad6b52}.photo-decoration{position:absolute;width:74px;height:74px;border:1px solid #ffffffaa;border-radius:50%;right:-15px;top:110px}.credential-band{background:#e0e9e2}.credential-inner{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:92px}.credential-inner>span:not(.band-divide){display:flex;flex-direction:column;gap:4px;flex:1;text-align:center}.credential-inner strong{font-size:11px;letter-spacing:.005em;color:#345341}.credential-inner small{font-size:10px;color:#5d7164}.band-divide{background:#bbcbbf;width:1px;height:34px}.section{padding:94px 0}.section-label{margin-bottom:18px}.section-intro{background:#fff}.intro-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:110px}.intro-layout h2{margin:0}.prose{font-size:14px;line-height:1.95;color:var(--copy)}.prose p{margin-bottom:18px}.inline-link{display:inline-flex;align-items:center;gap:9px;color:var(--forest);font-weight:600;font-size:12px;text-decoration:underline;text-underline-offset:5px;margin-top:7px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:35px}.section-heading h2{max-width:650px;margin:0}.section-heading>p{font-size:13px;line-height:1.9;color:var(--copy);max-width:380px}.reasons{background:#faf6f1}.reason-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.reason-card{min-height:268px;display:flex;flex-direction:column;align-items:flex-start;padding:25px 23px;background:#fff;border-radius:var(--radius);border:1px solid #f0e8de;transition:transform .2s,box-shadow .2s}.reason-card:hover{transform:translateY(-3px);box-shadow:0 13px 25px #2c38230d}.reason-num{font-size:9px;font-weight:700;letter-spacing:.09em;color:#ad755e}.reason-card h3{font-size:17px;line-height:1.38;letter-spacing:-.045em;margin:18px 0 10px}.reason-card p{font-size:11px;color:#607266;line-height:1.83;flex:1}.reason-featured{background:#dfe9df;border-color:#cbdacd}.card-link{font-size:10px;font-weight:700;text-decoration:underline;text-underline-offset:4px;margin-top:15px;color:var(--forest)}.reason-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:25px}.reason-bottom p{font-size:12px;max-width:700px;color:#657569}.process-section{background:#fff}.process-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}.process-intro h2{margin-bottom:24px}.process-intro>p:not(.section-label){font-size:13px;color:var(--copy);line-height:1.96}.process-highlight{margin-top:35px;border-radius:17px;background:#f0f5ef;padding:22px 26px;display:flex;gap:14px;align-items:flex-start}.quote-sign{font-family:Georgia,serif;font-size:48px;color:#c48a73;line-height:.85}.process-highlight p{font-family:Georgia,serif;font-size:17px;line-height:1.6;font-style:italic;color:#44574a}.process-steps{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-steps li{display:grid;grid-template-columns:70px 1fr;gap:17px;border-bottom:1px solid var(--line);padding:22px 0}.step-index{font:italic 34px Georgia,serif;color:#bd8a73}.process-steps h3{font-size:17px;margin:2px 0 8px}.process-steps p{font-size:12px;line-height:1.9;color:#68786c}.bio-section{background:#f6eee7}.bio-layout{display:grid;grid-template-columns:.68fr 1fr;gap:90px;align-items:center}.bio-panel{min-height:460px;background:linear-gradient(140deg,#d6e4da 5%,#e8dfd1 100%);border-radius:230px 230px 16px 16px;padding:80px 40px 50px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.bio-panel:before,.bio-panel:after{content:'';position:absolute;border:1px solid #ffffff86;border-radius:50%}.bio-panel:before{width:300px;height:300px;top:-130px;left:-130px}.bio-panel:after{width:240px;height:240px;bottom:-110px;right:-90px}.bio-ornament{font:italic 78px Georgia,serif;color:#a86c57;position:absolute;top:92px;left:45px}.bio-panel p{font-family:Georgia,serif;font-style:italic;font-size:25px;line-height:1.48;color:#395443;position:relative;max-width:300px}.bio-signature{font-family:Georgia,serif;color:#9b674f;font-style:italic;margin-top:24px}.bio-content h2{margin-bottom:22px}.bio-content>p:not(.section-label){font-size:13px;line-height:1.95;color:#5b695e;margin-bottom:15px}.bio-content>p a{text-decoration:underline;text-underline-offset:3px}.bio-facts{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 14px}.bio-facts span{font-size:10px;background:#fff8f1;border:1px solid #efded0;padding:9px 13px;border-radius:7px;color:#4e6254}.bio-facts strong{display:block;font-size:10px;margin-bottom:2px;color:#334a3b}.rates-section{background:#fff}.rate-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rate-card{background:#f8f6f1;border:1px solid #ebeae4;border-radius:var(--radius);padding:32px 35px;display:flex;flex-direction:column;justify-content:space-between;min-height:290px}.rate-card-alt{background:#ecf2eb;border-color:#dce6dc}.rate-label{font-size:10px;letter-spacing:.13em;font-weight:700;color:#9e765f}.rate-card h3{font-size:22px;margin-bottom:12px}.rate-card>div>p:not(.rate-label){font-size:12px;line-height:1.9;max-width:420px;color:#667669}.rate-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin-top:23px}.rate-price{font-size:31px;font-weight:600;color:var(--forest);letter-spacing:-.065em;white-space:nowrap}.rate-price small{display:block;font-size:10px;letter-spacing:0;color:#6f7b72;font-weight:400}.rate-bottom .button{min-height:44px;font-size:11px;padding:12px 15px}.rates-note{font-size:11px;color:#7c827b;margin-top:19px}.booking-section{background:#e7efe7}.booking-head{display:flex;gap:50px;justify-content:space-between;align-items:end;margin-bottom:30px}.booking-head h2{margin:0}.booking-head>p{font-size:13px;line-height:1.85;max-width:460px;color:#617466}.booking-layout{display:grid;grid-template-columns:1.04fr .96fr;gap:17px;align-items:start}.calendar-card,.form-card{border:1px solid #dce6db;border-radius:18px;background:white;padding:30px;box-shadow:0 12px 26px #253c3210}.booking-card-title{display:flex;gap:14px;align-items:flex-start}.card-step{font-family:Georgia,serif;font-size:27px;font-style:italic;line-height:1;color:#c78b72}.booking-card-title h3{font-size:19px;letter-spacing:-.045em;margin:0 0 6px}.booking-card-title p{font-size:11px;color:#748174;margin:0}.calendar-help,.form-intro{font-size:12px;line-height:1.8;color:#607266;margin-top:19px}.calendar-area{min-height:300px;background:#fbfaf7;border:1px solid #e9eee5;border-radius:10px;padding:14px;margin-top:18px}.calendar-area .huli-cw{min-height:240px}.calendar-fallback{font-size:10px;color:#718274;line-height:1.6;margin-top:8px}.calendar-contact-link{display:inline-block;margin-top:17px;font-size:11px;color:var(--forest);text-decoration:underline;text-underline-offset:4px;font-weight:600}.form-card{scroll-margin-top:100px}.form-intro{margin-bottom:18px}.form-field{margin-bottom:13px}.form-field label{display:block;font-size:11px;font-weight:600;color:#344b3d;margin-bottom:5px}.form-field label span{font-weight:400;color:#78857a}.form-field label .required{color:#b74c3b;font-weight:700}.form-field input,.form-field select,.form-field textarea{border:1px solid #c9d6cb;background:#fff;border-radius:7px;padding:12px 13px;width:100%;font-size:12px;color:#273e30;min-height:44px}.form-field textarea{resize:vertical;min-height:95px;line-height:1.65}.form-field :is(input,select,textarea):focus{outline:2px solid #8eaf93;outline-offset:1px;border-color:#799e83}.form-send{width:100%;margin-top:5px;border:0}.form-feedback,.privacy-text{font-size:10px;color:#6c7d71;line-height:1.7;margin:11px 0 0}.contact-alternative{font-size:11px;margin:17px 0 0}.contact-alternative a{font-weight:600;text-decoration:underline;text-underline-offset:3px}.privacy-text{margin-top:14px;border-top:1px solid #e9ebe6;padding-top:13px}.place-section{background:white}.place-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.place-image{position:relative;border-radius:15px;overflow:hidden;box-shadow:0 17px 35px #24392b14}.place-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.place-image figcaption{position:absolute;left:15px;bottom:16px;background:#fff;padding:9px 12px;border-radius:6px;color:#455c4a;font-size:10px;font-weight:600}.place-content>p:not(.section-label):not(.place-small){font-size:13px;line-height:1.9;color:#67756a;margin:23px 0}.address-box{display:flex;gap:16px;align-items:center;padding:19px 21px;background:#f3f7f2;border-radius:10px;margin:22px 0}.pin-symbol{font-size:32px;color:#b8846d}.address-box strong,.address-box span,.address-box small{display:block}.address-box strong{font-size:13px}.address-box div span{font-size:12px;color:#667669}.address-box small{font-size:10px;color:#8a9789}.place-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.place-small{font-size:10px;line-height:1.7;color:#839084;margin-top:18px}.faq-section{background:#faf7f2}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.faq-intro{font-size:13px;line-height:1.9;color:#68776a;max-width:360px;margin-top:22px}.faq-accordion details{border-bottom:1px solid #dfdfd7;padding:18px 2px}.faq-accordion details:first-child{border-top:1px solid #dfdfd7}.faq-accordion summary{cursor:pointer;font-size:13px;font-weight:600;line-height:1.5;list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.faq-accordion summary::-webkit-details-marker{display:none}.faq-accordion summary:after{content:'+';font-size:22px;color:#b27962;line-height:1}.faq-accordion details[open] summary:after{content:'−'}.faq-accordion details p{font-size:12px;line-height:1.9;color:#647569;margin:12px 30px 0 0}.backing-section{background:#edf4ed;padding:78px 0}.backing-layout{display:grid;grid-template-columns:1fr 320px;gap:75px;align-items:center}.backing-layout h2{max-width:680px}.backing-layout>div:first-child>p:not(.section-label){font-size:13px;line-height:1.95;color:#647667;margin:23px 0}.backing-layout p a{text-decoration:underline;text-underline-offset:3px}.backing-links{display:flex;flex-wrap:wrap;gap:12px 23px}.backing-links a{font-size:11px;font-weight:600;text-decoration:underline;text-underline-offset:4px;color:var(--forest)}.backing-seal{background:#fff;padding:31px 27px;border:1px solid #d8e3d8;border-radius:16px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 12px 35px #1d3c240c}.seal-small{font-size:9px;letter-spacing:.12em;color:#9c6f5c;font-weight:700}.backing-seal strong{font-family:Georgia,serif;font-size:31px;letter-spacing:-.045em;color:var(--forest);margin-top:14px}.backing-seal>span:nth-child(3){font-size:10px;color:#69766b;margin-top:4px}.seal-divider{height:1px;background:#e4e8df;width:100%;margin:22px 0}.backing-seal p{font-size:11px;color:#6b796d;line-height:1.8}.backing-seal b{font-size:13px;color:var(--forest)}.final-invite{background:var(--forest);padding:90px 0;text-align:center;color:#fff}.invite-inner{max-width:760px}.final-invite .section-label{color:#ffc4ae}.final-invite h2{margin-bottom:22px}.final-invite h2 em{color:#f8b79b}.final-invite p:not(.section-label){font-size:13px;line-height:1.9;color:#e0eadf;max-width:590px;margin:0 auto}.invite-buttons{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px}.footer{background:#24362d;color:#e9f1e8}.footer-layout{display:grid;grid-template-columns:1.55fr .8fr .8fr;gap:40px;padding:53px 0 33px}.footer-name{font-family:Georgia,serif;font-size:27px}.footer-layout p{font-size:10px;color:#c7d2c5;line-height:1.9;margin-top:13px}.official-note{font-size:10px;color:#d5e1d2}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links strong{font-size:11px;margin-bottom:6px;color:#fff}.footer-links a{font-size:10px;color:#cbd8ca}.footer-bottom{border-top:1px solid #3f5144;padding:19px 0 26px;display:flex;justify-content:space-between;gap:20px;color:#bfcdbf;font-size:9px}.mobile-action{display:none}
@media(max-width:1120px){.desktop-nav{gap:13px}.desktop-nav a{font-size:10px}.header-inner{gap:15px}.hero-layout{gap:15px}.photo-arch{height:465px}.hero-note{left:0}.process-layout{gap:55px}.place-layout,.bio-layout{gap:45px}.faq-layout{gap:45px}.intro-layout{gap:60px}}
@media(max-width:920px){.desktop-nav{display:none}.hero-layout{grid-template-columns:1fr .85fr}.hero h1{font-size:clamp(37px,5vw,56px)}.hero-text{padding:55px 0}.hero-art{min-height:500px}.photo-arch{height:425px}.hero-note{bottom:18px;padding:10px 13px}.reason-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reason-card{min-height:235px}.process-layout,.bio-layout,.place-layout{gap:35px}.section{padding:75px 0}.booking-layout{grid-template-columns:1fr 1fr}.calendar-card,.form-card{padding:23px}.backing-layout{grid-template-columns:1fr 250px;gap:35px}}
@media(max-width:700px){html{scroll-padding-top:78px}.container{width:min(100% - 36px,540px)}.topbar-inner{min-height:30px;font-size:9px}.topbar-inner a{font-size:9px}.header-inner{min-height:66px}.monogram{height:35px;width:35px;font-size:23px}.identity-copy strong{font-size:12px}.identity-copy small{font-size:9px}.nav-cta{display:none}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:unset}.hero-text{padding:50px 0 10px}.hero h1{font-size:clamp(36px,9vw,49px);margin:18px 0}.hero-tagline{font-size:16px}.hero-intro{font-size:12px}.hero-buttons{gap:10px;margin:23px 0 18px}.hero-buttons .button{width:100%}.hero-micro{font-size:9px;gap:7px}.hero-art{width:100%;min-height:336px;margin-top:20px}.photo-arch{width:min(100%,360px);height:335px}.hero-note{bottom:15px;left:0;max-width:220px;padding:10px;font-size:10px}.photo-decoration{display:none}.credential-inner{padding:18px 0;flex-wrap:wrap;gap:10px}.credential-inner>span:not(.band-divide){flex:0 0 100%;gap:2px}.credential-inner strong{font-size:10px}.credential-inner small{font-size:9px}.band-divide{display:none}.section{padding:62px 0}.section-label{font-size:9px;margin-bottom:14px}h2{font-size:clamp(30px,8vw,39px)}.intro-layout,.process-layout,.bio-layout,.place-layout,.faq-layout,.backing-layout,.booking-layout{grid-template-columns:1fr;gap:30px}.intro-layout h2{margin-bottom:8px}.prose{font-size:13px}.section-heading,.booking-head{display:block;margin-bottom:24px}.section-heading>p,.booking-head>p{margin:20px 0 0;font-size:12px}.reason-grid{grid-template-columns:1fr 1fr;gap:9px}.reason-card{padding:19px 16px;min-height:225px}.reason-num{font-size:8px}.reason-card h3{font-size:15px;margin:13px 0 8px}.reason-card p{font-size:10px;line-height:1.75}.reason-bottom{flex-direction:column;align-items:flex-start;gap:10px}.reason-bottom p{font-size:11px}.process-intro>p:not(.section-label){font-size:12px}.process-highlight{margin-top:20px;padding:17px}.process-steps li{grid-template-columns:53px 1fr;gap:10px;padding:17px 0}.step-index{font-size:30px}.process-steps h3{font-size:16px}.process-steps p{font-size:11px}.bio-panel{order:2;min-height:300px;border-radius:165px 165px 12px 12px;padding:45px 30px 30px}.bio-ornament{top:47px;font-size:55px}.bio-panel p{font-size:22px;max-width:360px}.bio-content{order:1}.bio-content>p:not(.section-label){font-size:12px}.bio-facts span{font-size:10px}.rate-grid{grid-template-columns:1fr;gap:11px}.rate-card{min-height:unset;padding:25px}.rate-card h3{font-size:20px}.rate-bottom .button{width:100%}.rate-price{font-size:29px}.calendar-card,.form-card{padding:20px}.calendar-area{min-height:250px}.calendar-area .huli-cw{min-height:190px}.booking-card-title h3{font-size:17px}.place-image figcaption{font-size:9px}.place-content>p:not(.section-label):not(.place-small){font-size:12px}.place-actions{align-items:stretch;flex-direction:column;gap:11px}.place-actions .button{width:100%}.faq-intro{font-size:12px}.faq-layout{gap:18px}.faq-accordion summary{font-size:12px}.faq-accordion details p{font-size:11px}.backing-section{padding:65px 0}.backing-layout>div:first-child>p:not(.section-label){font-size:12px}.backing-seal{max-width:370px}.final-invite{padding:65px 0 80px}.final-invite p:not(.section-label){font-size:12px}.invite-buttons{flex-direction:column}.invite-buttons .button{width:100%}.footer-layout{grid-template-columns:1fr 1fr;gap:22px;padding:40px 0 30px}.footer-layout>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px;padding-bottom:95px}.mobile-action{display:flex;position:fixed;z-index:30;left:0;bottom:0;right:0;align-items:center;justify-content:space-between;padding:14px 22px calc(14px + env(safe-area-inset-bottom));background:var(--forest);color:#fff;font-size:13px;font-weight:600;box-shadow:0 -6px 26px #0002}}
@media(max-width:390px){.topbar-inner a{display:none}.reason-grid{grid-template-columns:1fr}.reason-card{min-height:unset}.hero-note{left:0}.footer-layout{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* V2 – jerarquía clínica, reserva y reconocimiento móvil */
.hero-mini-profile{display:none}
.main-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:29px 0 43px}
.main-service{background:#fff;border:1px solid #eee4d9;border-radius:15px;padding:37px;display:flex;flex-direction:column;min-width:0;box-shadow:0 7px 24px #2b3d3210}
.main-service-couple{background:#e9f1e8;border-color:#d3e3d6}
.service-marker{letter-spacing:.12em;font-size:10px;font-weight:700;color:#a86c53;margin:0 0 20px}
.main-service h3{font-family:Georgia,serif;font-size:clamp(27px,2.55vw,36px);font-weight:400;line-height:1.12;letter-spacing:-.035em;color:#304738;margin:0 0 22px}
.main-service h3 em{font-weight:400;color:#bd7d65}
.main-service>p:not(.service-marker){font-size:13px;color:#617266;line-height:1.85;margin:0 0 18px}
.main-service ul{list-style:none;padding:0;margin:4px 0 25px}
.main-service li{position:relative;padding:12px 0 12px 22px;border-top:1px solid #e3e9df;color:#617266;font-size:12px;line-height:1.7}
.main-service li:before{content:'•';position:absolute;left:2px;top:9px;color:#b47b61;font-size:22px}
.main-service li strong{color:#354b3c;font-weight:600}
.service-action{margin-top:auto;align-self:flex-start;font-size:12px;font-weight:600;color:#34523b;border-bottom:1px solid currentColor;padding-bottom:5px;text-underline-offset:5px}
.service-action:focus-visible{outline:3px solid #829672;outline-offset:4px}
.other-motives-heading{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin-bottom:16px}
.other-motives-heading h3{font-size:20px;font-weight:600;color:#304738}
.other-motives-heading p{font-size:12px;color:#617266}
.other-motives{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.other-motives article{padding:25px 20px;background:#fff9;border:1px solid #eae5dd;border-radius:9px;min-width:0}
.other-index{display:block;color:#b8836e;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:13px}
.other-motives h4{font-size:14px;line-height:1.45;color:#334938;margin:0 0 11px}
.other-motives p{font-size:11px;line-height:1.78;color:#657669;margin:0}
.calendar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:15px}
.calendar-try{border:1px solid #bfcfc0;background:#fff;color:#30543a;border-radius:6px;cursor:pointer;font:600 11px Poppins,sans-serif;padding:12px 15px;min-height:43px}
.calendar-try:hover{background:#edf4ef}
.calendar-contact-link{font-size:11px}
.field-note{font-size:10px;line-height:1.5;color:#758477;margin-top:6px}
@media(max-width:920px){.main-service{padding:27px}.other-motives{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
.hero-text{padding:30px 0 22px}
.hero h1{font-size:clamp(35px,8.75vw,46px);margin:15px 0 13px;line-height:1.08}
.hero-mini-profile{display:flex;align-items:center;gap:15px;margin:15px 0 18px}
.hero-mini-profile img{width:90px;height:90px;object-fit:cover;object-position:center 8%;background:#f3e3d7;border-radius:50%;border:3px solid #f5e5dd;flex-shrink:0}
.hero-mini-profile span{color:#304536;font-size:13px;font-weight:600;line-height:1.6}
.hero-mini-profile small{font-size:10px;color:#7c897b;font-weight:400}
.hero-tagline{font-size:15px;line-height:1.5}
.hero-intro{font-size:11px;line-height:1.75;margin-top:10px}
.hero-buttons{margin:16px 0 14px}
.hero-buttons .button{min-height:44px}
.hero-art{display:none}
.main-services{grid-template-columns:1fr;gap:13px;margin:20px 0 33px}
.main-service{padding:26px 23px}
.main-service h3{font-size:30px}
.main-service>p:not(.service-marker){font-size:12px}
.main-service li{font-size:11px}
.other-motives-heading{display:block}
.other-motives-heading h3{font-size:18px}
.other-motives-heading p{font-size:11px;margin-top:5px}
.other-motives{grid-template-columns:1fr 1fr;gap:9px}
.other-motives article{padding:20px 16px}
.other-motives h4{font-size:13px}
.other-motives p{font-size:10px}
.calendar-actions{align-items:stretch;flex-direction:column}
.calendar-try,.calendar-contact-link{width:100%;text-align:center}
}
@media(max-width:390px){.other-motives{grid-template-columns:1fr}.hero-mini-profile img{width:78px;height:78px}.hero h1{font-size:35px}}


/* Ajustes finales de legibilidad en pantallas pequeñas */
@media (max-width: 700px) {
  body { font-size: 15px; }
  .topbar-inner, .topbar-inner a, .identity-copy small { font-size: 11px; }
  .hero-intro, .prose, .section-heading > p, .booking-head > p,
  .main-service > p:not(.service-marker), .process-intro > p:not(.section-label),
  .bio-content > p:not(.section-label), .rate-card > div > p:not(.rate-label),
  .place-content > p:not(.section-label):not(.place-small), .faq-intro,
  .backing-layout > div:first-child > p:not(.section-label),
  .final-invite p:not(.section-label) { font-size: 15px; line-height: 1.8; }
  .main-service li, .other-motives p, .process-steps p, .rate-card p,
  .other-motives-heading p, .reason-bottom p, .faq-accordion details p,
  .calendar-help, .form-intro, .place-small { font-size: 14px; line-height: 1.75; }
  .other-motives h4 { font-size: 16px; }
  .hero-micro, .hero-mini-profile small, .credential-inner small,
  .credential-inner strong, .footer-layout p, .official-note,
  .footer-links a, .footer-bottom { font-size: 12px; }
  .section-label, .eyebrow, .service-marker { font-size: 11px; }
  .button, .service-action, .inline-link, .calendar-contact-link,
  .calendar-try { font-size: 14px; }
  .booking-card-title p, .rates-note, .calendar-fallback,
  .field-note, .form-feedback, .privacy-text, .place-image figcaption {
    font-size: 13px; line-height: 1.65;
  }
  .form-field label { font-size: 14px; }
  .form-field input, .form-field select, .form-field textarea {
    font-size: 16px; min-height: 48px;
  }
  .form-field textarea { min-height: 104px; }
  .contact-alternative, .faq-accordion summary, .backing-links a { font-size: 14px; }
  .footer-links strong { font-size: 13px; }
  .hero-note { font-size: 13px; }
  .main-service, .other-motives article { overflow-wrap: break-word; }
}
