/* Mantenimiento Roberto Longinos Marcelino — Sitio estático */
:root{
  --ink:#19272b;--deep:#122327;--deep2:#1b3134;--muted:#617276;--white:#fff;
  --off:#f6f8f5;--paper:#fbfcf9;--mint:#daf1e6;--green:#267b6c;--green-bright:#a2d8be;
  --border:#d8e2dd;--shadow:0 24px 70px rgba(12,34,28,.105);
  --r-xl:30px;--r-lg:23px;--container:1220px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:95px}
body{margin:0;background:var(--off);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #55b29d;outline-offset:4px}
::selection{background:#b8e7d0;color:var(--deep)}
.skip-link{position:absolute;top:-60px;left:16px;background:white;color:var(--ink);padding:12px 16px;z-index:1000;border-radius:12px}
.skip-link:focus{top:12px}
.container{width:min(var(--container),calc(100% - 104px));margin-inline:auto}
.eyebrow{display:inline-flex;align-items:center;gap:11px;text-transform:uppercase;font-size:.73rem;letter-spacing:.19em;font-weight:800;color:var(--green)}
.eyebrow::before{content:'';width:26px;height:1px;background:currentColor}
.eyebrow.light{color:#a9d9c6}
.eyebrow.light::before{background:#a9d9c6}
.section{padding:115px 0}
.section-title{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:clamp(2.4rem,4.5vw,4.6rem);letter-spacing:-.075em;line-height:1.11;font-weight:800;margin:22px 0 20px;max-width:820px}
.section-title em{font-style:normal;color:var(--green)}
.body-copy{font-size:1rem;line-height:1.86;color:var(--muted)}
.topline{background:#142729;color:#e5f4ed;min-height:38px}
.topline .container{min-height:38px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.topline-left,.topline-right{display:flex;gap:13px;align-items:center;font-size:.63rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.topline .dot{height:6px;width:6px;background:#92e4b9;border-radius:50%;box-shadow:0 0 0 4px rgba(146,228,185,.12)}
.topline-right{color:#a5cab9;gap:8px}
.header{position:sticky;top:0;z-index:50;background:rgba(249,251,248,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(180,195,186,.45);transition:box-shadow .24s}
.header.scrolled{box-shadow:0 8px 25px rgba(25,39,43,.07)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}
.brand{display:flex;gap:12px;align-items:center;flex-shrink:0}
.brand-mark{display:grid;place-items:center;height:47px;width:47px;background:var(--deep);color:#d9f2e8;border-radius:15px 6px 15px 6px;font-family:system-ui,'Segoe UI',Arial,sans-serif;font-weight:800;font-size:1.5rem;letter-spacing:-.08em;position:relative}
.brand-mark::after{content:'';position:absolute;inset:4px;border:1px solid rgba(205,235,220,.24);border-radius:12px 4px 12px 4px;pointer-events:none}
.brand-copy{display:flex;flex-direction:column;gap:4px}
.brand-title{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:.98rem;font-weight:850;letter-spacing:-.035em;line-height:1}
.brand-subtitle{font-size:.62rem;color:var(--muted);font-weight:700;letter-spacing:.02em}
.nav{display:flex;align-items:center;gap:37px}
.nav a{font-size:.83rem;font-weight:700;color:#526568;position:relative;transition:color .2s}
.nav a:hover,.nav a:focus{color:var(--green)}
.nav a:not(.nav-cta)::after{content:'';height:2px;background:var(--green);position:absolute;bottom:-8px;left:0;width:0;transition:width .25s}
.nav a:hover::after{width:100%}
.nav .nav-cta{background:var(--deep);color:#fff;padding:15px 20px;border-radius:11px;white-space:nowrap}
.nav .nav-cta:hover{color:#fff;background:var(--green)}
.menu-toggle{display:none;border:1px solid var(--border);border-radius:12px;background:#fff;width:45px;height:45px;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.menu-toggle span{width:19px;height:2px;background:var(--deep);border-radius:2px;transition:transform .25s,opacity .25s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-7px) rotate(-45deg)}
/* Hero */
.hero{position:relative;overflow:hidden;padding:75px 0 88px;background:radial-gradient(circle at 81% 20%,rgba(220,238,221,.65),transparent 31%),linear-gradient(152deg,#f8faf6 0%,#f3f7f2 100%)}
.hero::before{content:'';pointer-events:none;position:absolute;top:0;right:0;width:50%;height:100%;background-image:linear-gradient(rgba(36,91,80,.036) 1px,transparent 1px),linear-gradient(90deg,rgba(36,91,80,.036) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent,#000)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:45px}
.hero-copy{position:relative;z-index:2;padding:34px 0}
.hero h1{margin:27px 0 15px;font-family:system-ui,'Segoe UI',Arial,sans-serif;font-weight:800;font-size:clamp(4.5rem,7.25vw,7.4rem);letter-spacing:-.095em;line-height:1.015;color:var(--deep)}
.hero h1 .line{display:block}
.hero h1 .accent{color:var(--green);position:relative}
.hero-name{display:flex;align-items:center;gap:18px;margin:33px 0 38px;padding-left:20px;border-left:3px solid var(--green)}
.hero-name span{font-size:.75rem;letter-spacing:.15em;font-weight:800;color:var(--green);text-transform:uppercase;display:block;margin-bottom:9px}
.hero-name strong{font-family:system-ui,'Segoe UI',Arial,sans-serif;display:block;font-size:clamp(1.15rem,1.9vw,1.55rem);letter-spacing:-.055em;line-height:1.35}
.hero-sub{color:var(--muted);font-size:1.04rem;margin:-15px 0 33px;line-height:1.7}
.action-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:16px;border:1px solid transparent;min-height:56px;border-radius:12px;padding:0 23px;font-size:.82rem;letter-spacing:.01em;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-3px)}
.btn-dark{background:var(--deep);color:#fff;box-shadow:0 15px 30px rgba(18,35,39,.15)}
.btn-dark:hover{background:#255f57;box-shadow:0 15px 35px rgba(27,99,83,.25)}
.btn-outline{color:var(--deep);background:rgba(255,255,255,.64);border-color:#cfdbd5}
.btn-outline:hover{background:white}
.btn svg,.link-arrow svg{width:17px;height:17px;flex-shrink:0}
.hero-micro{display:flex;align-items:center;gap:12px;margin-top:46px;color:#778780;text-transform:uppercase;font-size:.65rem;letter-spacing:.16em;font-weight:800}
.hero-micro .micro-line{height:1px;width:34px;background:#b4c8bd}
.hero-art{min-height:560px;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center}
.hero-art::before{content:'';position:absolute;inset:8% 2% 5% 13%;background:#d4e7db;border-radius:50% 50% 36% 64% / 45% 40% 60% 55%;z-index:-2;filter:blur(2px);transform:rotate(-9deg)}
.hero-art::after{content:'';position:absolute;width:110px;height:110px;right:2%;top:2%;border:1px solid #89b6a5;border-radius:50%;z-index:-1}
.hero-photo-main{position:absolute;top:7%;left:6%;right:9%;height:69%;background:#eef3ed;border:9px solid #fff;border-radius:120px 26px 28px 28px;box-shadow:0 35px 70px rgba(19,49,38,.17);overflow:hidden}
.hero-photo-main img{width:100%;height:100%;object-fit:cover;object-position:center 45%}
.image-fade::after{content:'';position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 22px 5px rgba(248,250,247,.24);border:1px solid rgba(255,255,255,.7)}
.hero-serial{position:absolute;top:13%;right:15%;background:rgba(255,255,255,.95);padding:12px 17px;border-radius:10px;font-size:.68rem;font-weight:900;letter-spacing:.17em;z-index:2;color:var(--deep);box-shadow:0 8px 20px rgba(22,41,31,.12)}
.hero-photo-small{position:absolute;bottom:5%;left:-1%;width:47%;height:34%;border:8px solid #fff;overflow:hidden;border-radius:24px 24px 70px 24px;box-shadow:0 16px 42px rgba(27,52,43,.19);z-index:2;background:#eaf0eb}
.hero-photo-small img{width:100%;height:100%;object-fit:cover}
.hero-stamp{position:absolute;right:-1%;bottom:7%;width:160px;height:160px;border-radius:50%;background:var(--deep);border:9px solid var(--off);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#f0f9f5;z-index:3;box-shadow:0 15px 40px rgba(20,48,38,.18)}
.hero-stamp span{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:3.0rem;letter-spacing:-.08em;font-weight:800;line-height:1}
.hero-stamp small{margin-top:9px;font-size:.69rem;letter-spacing:.23em;font-weight:700}
.hero-orbit{position:absolute;bottom:5%;right:17%;width:140px;height:140px;border-radius:50%;border:1px dashed #96b9a6;z-index:-1}
/* quick facts */
.quick-facts{background:var(--deep);color:#eef5f0}
.facts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fact{display:flex;align-items:center;gap:21px;padding:28px 30px;border-right:1px solid rgba(221,240,226,.15)}
.fact:first-child{padding-left:0}
.fact:last-child{border-right:0;padding-right:0}
.fact-icon{display:grid;place-items:center;width:47px;height:47px;flex:0 0 47px;border:1px solid rgba(208,236,221,.22);border-radius:15px;color:#b4e6d0}
.fact-icon svg{width:21px;height:21px}
.fact small{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#9bbcaf;font-weight:700;margin-bottom:8px}
.fact strong{display:block;font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:clamp(1rem,1.6vw,1.27rem);letter-spacing:-.045em;line-height:1.35}
/* editorial */
.intro{background:#fff}
.intro-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8%;align-items:end;margin-bottom:45px}
.intro-grid .body-copy{max-width:450px;margin-bottom:9px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.category-card{background:#f4f7f4;padding:11px;border-radius:24px;border:1px solid #e7eee8;transition:transform .25s,box-shadow .25s}
.category-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.category-photo{position:relative;border-radius:17px;overflow:hidden;background:#e6eeeb;aspect-ratio:1.33}
.category-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.category-card:hover img{transform:scale(1.04)}
.category-label{display:flex;align-items:center;justify-content:space-between;padding:21px 15px 13px;gap:10px}
.category-label strong{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-weight:800;font-size:1rem;letter-spacing:-.045em}
.category-label svg{width:18px;height:18px;color:var(--green)}
.intro-aside{color:var(--muted);font-size:.83rem;margin:28px 0 0;display:flex;align-items:center;gap:12px}
.intro-aside::before{content:'';height:1px;width:40px;background:#bed5c9}
/* gallery */
.gallery-section{background:var(--off);position:relative;overflow:hidden}
.gallery-section::before{content:'';position:absolute;top:10%;left:-180px;width:410px;height:410px;border-radius:50%;background:#e3f0e8;filter:blur(90px);pointer-events:none}
.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px;position:relative}
.gallery-heading .section-title{margin-bottom:0}
.gallery-counter{display:flex;align-items:baseline;gap:9px;padding-bottom:10px;white-space:nowrap}
.gallery-counter b{font-family:system-ui,'Segoe UI',Arial,sans-serif;color:var(--green);font-size:2.4rem;line-height:1;letter-spacing:-.08em}
.gallery-counter span{font-size:.79rem;color:var(--muted);font-weight:700}
.gallery-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 31px;position:relative}
.filter{display:flex;align-items:center;gap:8px;border:1px solid #dce7df;color:#60736c;background:#fff;padding:12px 17px;font-size:.8rem;font-weight:800;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s}
.filter:hover{transform:translateY(-2px);border-color:var(--green)}
.filter[aria-pressed=true]{background:var(--deep);color:white;border-color:var(--deep)}
.filter .count{font-size:.7rem;opacity:.65}
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch;position:relative}
.photo-card{min-width:0;border:1px solid #dee8df;border-radius:19px;overflow:hidden;background:#fff;box-shadow:0 8px 25px rgba(22,40,31,.038);transition:transform .25s,box-shadow .25s}
.photo-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(22,49,36,.12)}
.photo-card[hidden]{display:none!important}
.photo-open{display:block;width:100%;padding:0;border:0;cursor:zoom-in;text-align:left;background:transparent;color:inherit}
.photo-media{position:relative;display:grid;place-items:center;overflow:hidden;aspect-ratio:1/1;background:linear-gradient(135deg,#e9eeeb,#f4f7f3)}
.photo-media img{width:100%;height:100%;object-fit:contain;transition:transform .3s;image-rendering:auto}
.photo-open:hover .photo-media img{transform:scale(1.015)}
.photo-media::after{content:'';position:absolute;pointer-events:none;inset:0;border:1px solid rgba(44,95,76,.15);box-shadow:inset 0 0 21px 2px rgba(248,250,247,.65);border-radius:inherit}
.photo-number{position:absolute;z-index:2;top:11px;left:11px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);color:var(--deep);border:1px solid rgba(245,250,246,.85);padding:8px 9px;border-radius:8px;font-size:.64rem;font-weight:900;letter-spacing:.1em}
.photo-zoom{position:absolute;z-index:2;bottom:11px;right:11px;width:35px;height:35px;background:var(--deep);color:white;border-radius:50%;display:grid;place-items:center;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}
.photo-card:hover .photo-zoom,.photo-open:focus-visible .photo-zoom{opacity:1;transform:translateY(0)}
.photo-zoom svg{width:17px;height:17px}
.photo-meta{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:15px 14px 16px}
.photo-meta strong{font-size:.8rem;font-weight:800;letter-spacing:-.015em}
.photo-meta span{font-size:.65rem;letter-spacing:.08em;color:#7d9488;font-weight:800}
.gallery-end{display:flex;align-items:center;justify-content:center;gap:12px;color:#74877d;font-size:.8rem;margin:35px 0 0;letter-spacing:.015em}
.gallery-end:before,.gallery-end:after{content:'';width:40px;height:1px;background:#c4d8cb}
/* band */
.availability{position:relative;background:#183034;color:#fff;overflow:hidden}
.availability::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 75%,rgba(111,174,145,.2),transparent 34%),repeating-linear-gradient(-45deg,transparent,transparent 65px,rgba(176,225,202,.035) 66px,rgba(176,225,202,.035) 67px);pointer-events:none}
.avail-grid{position:relative;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;padding:85px 0}
.avail-title{margin:18px 0 0;font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:clamp(6rem,13vw,13rem);letter-spacing:-.115em;font-weight:800;line-height:.9}
.avail-title span{color:var(--green-bright)}
.avail-details{border-left:1px solid rgba(209,241,220,.3);padding-left:55px}
.avail-details p{font-size:.75rem;color:#a8d2c2;letter-spacing:.18em;font-weight:800;text-transform:uppercase;margin:0 0 17px}
.avail-details h2{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:clamp(1.65rem,2.7vw,2.6rem);letter-spacing:-.065em;line-height:1.2;margin:0 0 24px}
.avail-details .btn{border-color:rgba(210,245,221,.5);background:transparent;color:#fff;min-height:50px}
.avail-details .btn:hover{background:#2b5f55}
.availability-circle{position:absolute;border:1px solid rgba(194,234,210,.2);height:310px;width:310px;border-radius:50%;right:-130px;top:-130px}
/* location */
.location{background:#fff}
.location-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:11%;align-items:center}
.location-details .section-title{margin-bottom:32px}
.location-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}
.location-tags span{border:1px solid #c9dcd0;border-radius:8px;background:#f6fbf7;padding:12px 15px;font-size:.78rem;font-weight:800;color:var(--green)}
.location-owner{border-left:3px solid var(--green);padding-left:17px;color:var(--muted);font-size:.85rem;line-height:1.7}
.location-owner strong{display:block;color:var(--ink);font-size:1.05rem;margin-top:3px}
.location-art{background:linear-gradient(130deg,#eaf5ed,#daeade);border-radius:34px;min-height:350px;position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid #d7e8da}
.location-art::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(37,102,82,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(37,102,82,.075) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle,#000,transparent 88%)}
.map-ring{position:absolute;width:290px;height:290px;border:1px solid rgba(39,123,108,.23);border-radius:50%}
.map-ring::after{content:'';position:absolute;inset:33px;border:1px dashed rgba(39,123,108,.3);border-radius:50%}
.map-inner{position:relative;width:195px;height:195px;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;background:var(--deep);color:white;box-shadow:0 28px 54px rgba(24,66,49,.22)}
.map-inner svg{width:26px;height:26px;color:#b9e4d0;margin-bottom:12px}
.map-inner b{font-family:system-ui,'Segoe UI',Arial,sans-serif;font-size:3.1rem;letter-spacing:-.085em;line-height:1}
.map-inner small{font-size:.64rem;letter-spacing:.21em;color:#a9d5c3;margin-top:10px;font-weight:800}
.map-cross{position:absolute;right:25px;top:22px;color:#73a893;font-weight:900;font-size:1.4rem}
/* footer */
.footer{background:#122528;color:#d9ece2;padding:50px 0 24px}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:42px;border-bottom:1px solid rgba(214,237,219,.17)}
.footer .brand-mark{background:#2b554d}
.footer .brand-title{color:white}
.footer .brand-subtitle{color:#9dc0b1}
.footer-links{display:flex;gap:30px;flex-wrap:wrap}
.footer-links a{font-size:.81rem;font-weight:700;color:#d3e4d9;transition:color .2s}
.footer-links a:hover{color:white}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;font-size:.71rem;color:#9ab6aa;line-height:1.7}
.to-top{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(209,238,216,.25);border-radius:10px;padding:10px 13px;color:#d9ece2;background:transparent;cursor:pointer;font-size:.72rem;font-weight:800;transition:background .2s}
.to-top:hover{background:#31574d}
.to-top svg{width:15px;height:15px}
/* lightbox */
.lightbox[hidden]{display:none!important}
.lightbox{position:fixed;inset:0;z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column;background:rgba(9,21,22,.97);color:white;padding:50px 82px 46px}
.lightbox-image-wrap{min-width:0;min-height:0;width:100%;height:calc(100% - 65px);display:grid;place-items:center}
.lightbox-image{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border:1px solid rgba(222,245,229,.25);border-radius:8px;box-shadow:0 20px 85px rgba(0,0,0,.25)}
.lightbox-caption{margin:19px auto 0;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.82rem;color:#e1f3e9}
.lightbox-caption .lightbox-index{color:#99cdb6;letter-spacing:.13em;font-weight:800}
.lightbox-close,.lightbox-arrow{position:absolute;display:grid;place-items:center;background:rgba(255,255,255,.1);color:white;border:1px solid rgba(222,255,237,.22);border-radius:12px;cursor:pointer;transition:background .2s}
.lightbox-close:hover,.lightbox-arrow:hover{background:rgba(255,255,255,.24)}
.lightbox-close{width:45px;height:45px;right:31px;top:27px}
.lightbox-close svg,.lightbox-arrow svg{width:20px;height:20px}
.lightbox-arrow{top:50%;transform:translateY(-50%);width:50px;height:55px}
.lightbox-prev{left:17px}
.lightbox-next{right:17px}
/* progressive enhancement animation */
@media (prefers-reduced-motion:no-preference){.js-enhanced .reveal{transform:translateY(12px);transition:transform .7s cubic-bezier(.2,.75,.3,1)}.js-enhanced .reveal.in-view{transform:none}}
@media (min-width:1250px){.photo-card:nth-child(9n+1) .photo-media{aspect-ratio:1/1}.photo-card:nth-child(9n+4) .photo-media{aspect-ratio:1/1}}
@media (max-width:1100px){.container{width:min(var(--container),calc(100% - 64px))}.nav{gap:19px}.hero-grid{gap:22px}.hero h1{font-size:clamp(4rem,7.3vw,6rem)}.hero-art{min-height:510px}.hero-photo-small{left:-3%}.cards{gap:16px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fact{padding:25px 17px;gap:13px}}
@media (max-width:800px){
 .container{width:min(var(--container),calc(100% - 40px))}
 .header-inner{min-height:72px}.brand-mark{height:43px;width:43px}.brand-title{font-size:.89rem}
 .menu-toggle{display:flex;z-index:3}
 .nav{display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;background:#fbfdfa;box-shadow:0 20px 27px rgba(9,34,19,.1);border-bottom:1px solid var(--border);padding:22px 20px;gap:0;flex-direction:column;align-items:stretch}
 .nav.open{display:flex}.nav a{padding:15px 12px;font-size:.9rem}.nav a:not(.nav-cta)::after{display:none}.nav .nav-cta{margin-top:8px;text-align:center}
 .hero{padding:51px 0 50px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:0}.hero h1{font-size:clamp(4.7rem,11vw,7rem);margin-top:21px}.hero-name{margin:27px 0 30px}.hero-micro{margin-top:30px}.hero-art{min-height:510px;margin-top:10px;max-width:620px;width:100%;justify-self:center}
 .facts-grid{grid-template-columns:repeat(3,1fr)}.fact{align-items:flex-start;flex-direction:column;gap:13px}.fact-icon{width:40px;height:40px;flex-basis:40px}
 .section{padding:79px 0}.intro-grid{grid-template-columns:1fr;gap:0}.intro-grid .body-copy{max-width:690px}.section-title{font-size:clamp(2.4rem,6vw,4rem)}.cards{gap:12px}.category-label{padding:16px 8px 8px}.category-label strong{font-size:.87rem}
 .gallery-grid{gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}
 .avail-grid{padding:75px 0;gap:23px}.avail-title{font-size:clamp(5rem,14vw,8rem)}.avail-details{padding-left:25px}
 .location-grid{gap:5%;grid-template-columns:1fr 1fr}.location-art{min-height:330px}
}
@media (max-width:580px){
 .topline-left,.topline-right{font-size:.57rem;letter-spacing:.13em}.topline-right{gap:5px}
 .brand-subtitle{font-size:.55rem}.brand-title{font-size:.82rem}.brand{gap:9px}
 .hero h1{font-size:clamp(3.38rem,13vw,5rem);letter-spacing:-.095em}.hero-sub{font-size:.92rem}.hero-art{min-height:365px;max-width:440px;margin-top:25px}.hero-photo-main{left:5%;right:8%;top:4%;height:71%;border-width:6px;border-top-left-radius:80px}.hero-photo-small{width:43%;height:35%;border-width:5px;left:-1%;bottom:1%;border-bottom-right-radius:40px}.hero-stamp{width:118px;height:118px;border-width:6px;right:-1%;bottom:1%}.hero-stamp span{font-size:2.3rem}.hero-stamp small{font-size:.55rem}.hero-serial{font-size:.55rem;right:12%}
 .hero-micro{font-size:.58rem}.btn{min-height:50px;padding:0 16px;font-size:.76rem;gap:9px}.action-row{gap:9px}
 .facts-grid{grid-template-columns:1fr}.fact{flex-direction:row;align-items:center;padding:20px 0;border-right:0;border-bottom:1px solid rgba(221,240,226,.15)}.fact:last-child{border-bottom:0}.fact small{margin-bottom:4px}
 .section{padding:67px 0}.intro-grid{margin-bottom:28px}.cards{grid-template-columns:1fr;gap:17px}.category-photo{aspect-ratio:1.75}.category-label{padding:18px 14px 12px}.category-label strong{font-size:1.05rem}
 .gallery-heading{gap:10px;align-items:end}.gallery-counter b{font-size:1.9rem}.gallery-counter span{display:none}.gallery-filters{gap:7px}.filter{padding:10px 12px;font-size:.72rem}.filter .count{font-size:.64rem}
 .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-card{border-radius:13px}.photo-number{top:7px;left:7px;padding:6px 7px;font-size:.58rem}.photo-zoom{opacity:1;transform:none;width:28px;height:28px;right:7px;bottom:7px}.photo-zoom svg{height:13px;width:13px}.photo-meta{padding:11px 9px}.photo-meta strong{font-size:.67rem}.photo-meta span{font-size:.54rem}
 .avail-grid{grid-template-columns:1fr;padding:63px 0}.avail-title{font-size:clamp(6rem,24vw,9rem)}.avail-details{border-left:0;border-top:1px solid rgba(209,241,220,.3);padding:28px 0 0}.avail-details h2{font-size:1.9rem}
 .location-grid{grid-template-columns:1fr;gap:35px}.location-art{min-height:310px}.map-inner{width:170px;height:170px}.map-ring{width:260px;height:260px}
 .footer-top,.footer-bottom{align-items:flex-start;flex-direction:column;gap:26px}.footer-links{gap:15px 23px}.footer-bottom{gap:15px}
 .lightbox{padding:73px 12px 80px}.lightbox-image-wrap{height:calc(100% - 60px)}.lightbox-close{right:13px;top:14px;width:40px;height:40px}.lightbox-arrow{top:auto;bottom:16px;transform:none;height:43px;width:50px}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-caption{max-width:calc(100% - 150px);font-size:.68rem;position:absolute;bottom:28px;margin:0;left:50%;transform:translateX(-50%);white-space:nowrap}
}
@media(max-width:360px){.container{width:calc(100% - 30px)}.topline-right{display:none}.hero h1{font-size:3.13rem}.brand-subtitle{font-size:.5rem}.brand-title{font-size:.76rem}.hero-art{min-height:325px}.gallery-grid{gap:7px}.photo-meta span{display:none}.filter{font-size:.67rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
