@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--green:#19372c;--dark:#142c24;--cream:#f6f4ee;--gold:#dac398;--ink:#243b30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none;cursor:pointer}button,select{font:inherit}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bd9656;outline-offset:5px}.skip{position:absolute;left:0;top:-100px;background:white;z-index:50}.skip:focus{top:0}header{min-height:104px;background:var(--dark);color:var(--cream);display:flex;align-items:center;justify-content:space-between;gap:32px;padding:20px 5%;border-bottom:1px solid #ffffff26}.wordmark{font:27px Georgia,serif;letter-spacing:5px;white-space:nowrap}.wordmark small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:2.1px;margin-top:8px}.header-call{border:1px solid #ffffff60;padding:9px 22px;border-radius:4px;line-height:1.3}.header-call small{display:block;font-size:12px;opacity:.75}nav{display:flex;gap:26px;font-size:14px}nav a:hover{color:var(--gold)}.menu{display:none}.hero{position:relative;background:linear-gradient(90deg,rgba(12,30,22,.92),rgba(12,30,22,.58) 50%,rgba(12,30,22,.05)),url('la-molina.jpg') center/cover;color:#fff;min-height:635px;padding:80px 7% 45px}.hero-inner{max-width:780px}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:500;margin:0 0 24px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.06}h1{font-size:76px;letter-spacing:-1.5px;margin-bottom:25px}h1 em{font-weight:400;color:#e7d9ba} .intro{max-width:490px;font-size:18px;color:#efeee6;line-height:1.7}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:15px 23px;border:1px solid var(--green);border-radius:3px;font-size:14px;font-weight:500;background:var(--green);color:white;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#305443}.button.gold{background:var(--gold);color:var(--dark);border-color:var(--gold)}.button.outline{background:transparent;color:inherit;border-color:#ffffff70}.hero-notes{display:flex;gap:28px;font-size:12px;margin-top:55px;letter-spacing:.3px}.hero-notes span:before{content:'✓';margin-right:9px;color:var(--gold)}.photo-label{position:absolute;bottom:24px;right:5%;font-size:12px;opacity:.75}.promise{display:flex;align-items:center;justify-content:space-between;padding:26px 7%;border-bottom:1px solid #dcded5;gap:20px}.promise>span{font-size:10px;letter-spacing:2px}.promise p{font:26px 'Libre Caslon Display',Georgia,serif;margin:0}.promise a{font-size:13px}section.content{padding:85px 7%}h2{font-size:52px;margin-bottom:22px}h3{font-size:32px;margin-bottom:15px}.muted{color:#667469}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:35px}.section-head p{max-width:390px}.section-head .eyebrow{margin-bottom:15px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:25px}.card{border:1px solid #d8ded3;background:#fff}.card img{width:100%;height:245px;object-fit:cover;display:block}.card-body{padding:30px}.card .eyebrow{font-size:10px;margin-bottom:12px}.text-link{display:inline-block;border-bottom:1px solid #a4b0a0;padding-bottom:5px;font-size:14px}.other-options{display:flex;align-items:center;gap:35px;padding-top:35px;margin-top:36px;border-top:1px solid #d8ded3}.other-options>p{max-width:300px;margin:0;font-size:14px}.other-options a{font:28px 'Libre Caslon Display',Georgia,serif;margin-left:auto}.plan{background:#e9ece3}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.plan article{padding:38px;border:1px solid #c8d0c1}.plan article:first-child{background:var(--green);color:white}.plan ul{padding-left:20px;margin:24px 0 30px}.plan li{margin-bottom:10px}.plan .note{font-size:12px;margin-top:20px;color:#60705f}.contact{background:var(--dark);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact img{width:100%;max-width:360px;display:block;margin:-35px auto 0}.contact h2{max-width:450px}.contact p{color:#d5dfd5}.contact-box{padding:35px;border:1px solid #6c7e70;align-self:center}.contact-box label{display:block;margin:18px 0 8px;font-size:14px}.contact-box select{width:100%;padding:13px;background:#f6f4ee;color:var(--dark);border:0;border-radius:2px}.contact-box .button{width:100%;margin-top:25px}.contact-box small{display:block;margin-top:15px;color:#c2cec3}.faq{max-width:1000px;margin:auto}details{padding:20px 0;border-bottom:1px solid #d8ded3}summary{cursor:pointer;font-size:18px}details p{margin:18px 0 0;max-width:750px;color:#617063}footer{padding:40px 7%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p,footer>span{font-size:12px;margin:0}.floating{position:fixed;bottom:22px;right:24px;z-index:20;background:#234c3c;color:white;border:1px solid #ffffff80;border-radius:35px;padding:12px 22px;box-shadow:0 4px 18px #0003;font-size:14px}@media(max-width:1000px){header{gap:15px}.wordmark{font-size:21px;letter-spacing:3px}nav{gap:14px;font-size:12px}.header-call{display:none}h1{font-size:64px}.promise>span{display:none}}@media(max-width:650px){header{min-height:85px;padding:18px 6%;position:relative}.wordmark{font-size:23px}.menu{display:block;background:none;border:1px solid #ffffff50;color:white;padding:5px 10px;border-radius:3px}nav{display:none;position:absolute;top:85px;left:0;width:100%;background:var(--dark);padding:25px;z-index:30;font-size:16px}nav.open{display:flex;flex-direction:column}.hero{padding:60px 7% 65px;min-height:640px;background-position:60% center}h1{font-size:49px;letter-spacing:-.7px}.intro{font-size:16px}.eyebrow{font-size:10px}.hero-notes{gap:14px;flex-direction:column;margin-top:30px}.photo-label{font-size:10px}.promise{padding:23px 7%;display:block}.promise p{font-size:23px;margin-bottom:8px}.section-head{display:block}section.content{padding:55px 7%}h2{font-size:42px}.cards,.plan-grid,.contact{grid-template-columns:1fr}.card img{height:210px}.card-body,.plan article{padding:26px}.other-options{align-items:start;flex-direction:column;gap:15px}.other-options a{margin-left:0}.contact{gap:20px}.contact img{max-width:250px;margin:-20px auto}.contact-box{padding:24px}footer{align-items:start;flex-direction:column;padding-bottom:85px}.floating{bottom:15px;right:15px}}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps article{border-top:1px solid #bbc8b9;padding-top:24px}.steps span{font-size:13px;color:#7d896f;display:block;margin-bottom:22px}.steps h3{font-size:29px}.steps p{color:#667469;font-size:15px}.agreement{margin-top:55px;padding:35px;background:#e9ece3;display:flex;align-items:center;justify-content:space-between;gap:40px}.agreement p{max-width:620px;margin-bottom:0}.agreement .eyebrow{margin-bottom:15px}.agreement .button{flex-shrink:0}@media(max-width:650px){.steps{grid-template-columns:1fr;gap:20px}.agreement{padding:25px;display:block}.agreement .button{margin-top:20px}}
/* Sedes, galerías y convenios */
body{font-family:'DM Sans',Arial,sans-serif}h3{font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:27px;line-height:1.3}.card .eyebrow{font-size:12px}nav{gap:19px;font-size:14px}.header-call{white-space:nowrap}.hero{background-image:linear-gradient(90deg,rgba(12,30,22,.92),rgba(12,30,22,.58) 50%,rgba(12,30,22,.05)),url('assets/molina-2.jpg')}.venue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-button{display:block;padding:0;border:0;width:100%;position:relative;cursor:pointer;background:#d5ddd0;overflow:hidden}.photo-button img{height:285px;transition:transform .35s}.photo-button:hover img{transform:scale(1.035)}.photo-count{position:absolute;bottom:15px;right:15px;background:#17362de8;color:white;padding:6px 12px;border-radius:3px;font-size:12px}.place-card .card-body{padding:27px 30px}.place-card h3{font-size:28px;margin-bottom:12px}.place-card .muted{min-height:52px;font-size:15px}.gallery-open{border:1px solid var(--green);background:var(--green);color:white;cursor:pointer;padding:11px 18px;border-radius:3px;margin-right:18px;font-size:14px}.gallery-open:hover{background:#365c47}.place-card .text-link{font-size:14px;margin-top:12px}.alternatives-heading{margin-top:65px}.alternatives .photo-button img{height:300px}.agreements{background:#ebece5;border-top:1px solid #dce0d6}.partner-carousel{position:relative}.partner-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:8px 4px 20px;position:relative;scroll-padding-left:4px}.partner-card{flex:0 0 calc((100% - 44px)/3);min-width:225px;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;flex-direction:column;background:white;padding:30px 22px;min-height:235px;border:1px solid #dce1d7;border-radius:6px;text-align:center}.partner-card:hover{border-color:#789176}.partner-card img{height:78px;max-width:200px;width:100%;object-fit:contain;margin-bottom:22px}.partner-card strong{font-size:17px}.partner-card>span:not(.partner-category){font-size:13px;color:#667469;margin:5px 0 12px}.partner-card small{font-size:13px;color:#355744;border-bottom:1px solid #b6c3b3}.partner-category{height:78px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600;color:#315741;margin-bottom:22px;line-height:1.2}.carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.carousel-dots{display:flex;gap:10px}.carousel-dots button{width:17px;height:17px;padding:0;border:1px solid #74917a;background:transparent;border-radius:50%;cursor:pointer}.carousel-dots button[aria-pressed=true]{background:var(--green)}#pause-partners{background:transparent;border:1px solid #8d9e8b;border-radius:3px;color:var(--green);padding:8px 15px;font:inherit;font-size:13px;cursor:pointer}.service-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.service-card{background:#fff;border:1px solid #dce1d7;display:flex;flex-direction:column}.service-card img{height:165px;width:100%;object-fit:cover}.service-card>div{padding:22px 18px;flex:1;display:flex;flex-direction:column}.service-card h3{font-size:18px;font-weight:600;line-height:1.4}.service-card p{font-size:14px;color:#667469}.service-card span{font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:auto}.service-card:hover{border-color:#759077}dialog{border:0;border-radius:8px;padding:28px;width:min(1000px,94vw);max-height:92dvh;color:var(--ink);background:var(--cream);box-shadow:0 20px 90px #0007}dialog::backdrop{background:#0b1c16d9;backdrop-filter:blur(4px)}.modal-open{overflow:hidden}.gallery-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:20px}.gallery-header .eyebrow{margin-bottom:8px}.gallery-header h2{font-family:'DM Sans',Arial,sans-serif;font-weight:500;font-size:30px;margin:0}#close-gallery{border:1px solid #95a38e;background:transparent;padding:10px 18px;border-radius:4px;color:var(--green);cursor:pointer;font:inherit}dialog figure{margin:0}#gallery-image{display:block;width:100%;height:min(48dvh,480px);object-fit:contain;background:#172e24;border-radius:4px}#gallery-caption{font-size:13px;margin:9px 0;color:#65745f}#gallery-thumbnails{display:flex;gap:10px;margin:13px 0 20px}#gallery-thumbnails button{padding:3px;border:2px solid transparent;background:transparent;cursor:pointer;border-radius:4px}#gallery-thumbnails button[aria-pressed=true]{border-color:#244e37}#gallery-thumbnails img{display:block;width:95px;height:62px;object-fit:cover}#gallery-address{font-size:14px;margin-bottom:18px}.gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}#gallery-source{font-size:12px;text-decoration:underline}.gallery-footer .button{padding:12px 18px}select{appearance:none;background-image:none!important}summary{list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:'+';float:right;margin-left:12px}details[open] summary::after{content:'−'}@media(max-width:1100px){header{flex-wrap:wrap}.header-call{display:none}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card img{height:200px}}@media(max-width:650px){.venue-grid{grid-template-columns:1fr}.photo-button img,.alternatives .photo-button img{height:230px}.place-card .card-body{padding:24px}.place-card .muted{min-height:0}.place-card h3{font-size:26px}.partner-card{flex-basis:85%;min-width:0}.service-grid{grid-template-columns:1fr 1fr;gap:14px}.service-card img{height:135px}.service-card>div{padding:16px}.service-card h3{font-size:16px}.service-card p{font-size:13px}.gallery-header h2{font-size:24px}dialog{padding:20px}#gallery-image{height:34dvh}.gallery-footer{align-items:flex-start;flex-direction:column}.carousel-controls{gap:12px}.carousel-dots{gap:7px}.carousel-dots button{width:16px;height:16px}#pause-partners{padding:8px;font-size:12px}#gallery-thumbnails img{width:75px;height:52px}header{flex-wrap:nowrap}.alternatives-heading{margin-top:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media(min-width:651px) and (max-width:850px){.section-head{display:block}.section-head>p{max-width:560px}.steps{gap:25px}.steps h3{font-size:23px}.place-card .card-body{padding:22px}.place-card .gallery-open{margin-right:0}.place-card .text-link{display:block;width:fit-content}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
