:root{--navy:#071b24;--teal:#0f5f68;--sand:#d9c7a3;--cream:#f5efe4;--ink:#10242b;--muted:#657277;--line:rgba(16,36,43,.16);--serif:Georgia,"Times New Roman",serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbf9f4;color:var(--ink);font:16px/1.6 var(--sans)}img{max-width:100%;display:block}a{color:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:999;background:#fff;padding:.7rem 1rem}.skip:focus{top:1rem}.notice{position:relative;z-index:220;background:#c9b286;padding:.68rem 5vw;text-align:center;font-size:.76rem}.notice b{letter-spacing:.13em;text-transform:uppercase;font-size:.65rem;margin-right:.8rem}.site-header{position:sticky;top:0;z-index:210;display:flex;justify-content:space-between;align-items:center;padding:.85rem 5vw;background:rgba(7,27,36,.94);color:#fff;border-bottom:1px solid rgba(255,255,255,.14);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none}.brand-mark{width:36px;height:36px;border:1px solid;border-radius:50%;display:grid;place-items:center;font:1.25rem var(--serif)}.brand strong{display:block;font:1.05rem var(--serif);font-weight:400}.brand small{display:block;font-size:.52rem;letter-spacing:.18em;text-transform:uppercase;opacity:.7}.nav{display:flex;align-items:center;gap:1.15rem}.nav a{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.nav a[aria-current=page]{color:#ead5ac}.nav .pill{border:1px solid rgba(255,255,255,.65);border-radius:999px;padding:.55rem .8rem}.nav-toggle{display:none;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;border-radius:50%;width:42px;height:42px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.65rem;font-weight:800;color:#907449}.display{font:400 clamp(2.5rem,4.5vw,5.25rem)/.94 var(--serif);letter-spacing:-.045em;margin:.55rem 0 1.2rem}.lede{font:clamp(1.2rem,2vw,1.65rem)/1.5 var(--serif);color:#536066}.pad{padding:clamp(4.5rem,9vw,9rem) 7vw}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:.92rem 1.2rem;background:var(--sand);color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.65rem;cursor:pointer}.btn.ghost{background:transparent;border:1px solid currentColor}.actions{display:flex;gap:.7rem;flex-wrap:wrap}.page-hero{min-height:74vh;display:grid;align-items:end;padding:8rem 7vw 6rem;color:#fff;background:linear-gradient(90deg,rgba(2,18,24,.82),rgba(2,18,24,.2)),var(--hero) center/cover}.page-hero>div{max-width:820px}.page-hero .eyebrow{color:#ead5ac}.page-hero p{max-width:650px;color:rgba(255,255,255,.82);font-size:1.15rem}.grid{display:grid;gap:1.4rem}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(3,1fr)}.card{border:1px solid var(--line);padding:2rem;background:#fff}.card h3{font:400 1.7rem var(--serif);margin:.3rem 0}.card p{color:var(--muted)}.dark{background:var(--navy);color:#fff}.dark p{color:#b7c1c2}.booking{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;background:var(--cream)}.demo-badge{display:inline-block;border:1px solid #a67c42;border-radius:999px;padding:.35rem .65rem;color:#795b34;font-size:.62rem;letter-spacing:.13em;text-transform:uppercase}.quote-form,.concierge-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#fff;border:1px solid var(--line);padding:1.4rem;box-shadow:0 20px 70px rgba(16,36,43,.08)}label{display:grid;gap:.4rem;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;font-weight:800}input,select,textarea{width:100%;padding:.85rem;border:1px solid #cbd0cc;background:#fbfaf6;font:inherit}.wide{grid-column:1/-1}.quote-result,.form-status{grid-column:1/-1;padding:1rem;background:#0d3138;color:#fff}.media-feature{display:grid;grid-template-columns:1.15fr .85fr;min-height:70vh}.media-feature img{width:100%;height:100%;object-fit:cover}.media-feature>div{padding:clamp(3rem,7vw,7rem);align-self:center}.conveniences{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--line);margin-top:3rem}.conveniences span{padding:1.4rem .8rem;border-right:1px solid var(--line);font:1.05rem var(--serif);text-align:center}.conveniences span:last-child{border:0}.gallery-filters{display:flex;gap:.45rem;flex-wrap:wrap;margin:2rem 0}.gallery-filters button{border:1px solid var(--line);background:transparent;border-radius:999px;padding:.55rem .8rem;cursor:pointer}.gallery-filters button[aria-pressed=true]{background:var(--navy);color:#fff}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.gallery figure{margin:0;grid-column:span 4;position:relative;overflow:hidden;background:#ddd;min-height:280px}.gallery figure:nth-child(1),.gallery figure:nth-child(5){grid-column:span 8}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery figure:hover img{transform:scale(1.025)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:2rem 1rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,.7));color:#fff;font-size:.75rem}.gallery figure[hidden]{display:none}.floorplan{border:1px solid var(--line);padding:4rem;text-align:center;background:linear-gradient(135deg,#f0e8da,#fff)}.floorplan .plan{margin:2rem auto;width:min(680px,100%);aspect-ratio:16/8;border:1px dashed #8b806f;display:grid;place-items:center;color:#71695e}.map-journey{position:relative;height:620vh;background:#061c24}.map-stage{position:sticky;top:0;height:100vh;overflow:hidden}.map-stage img{width:100%;height:100%;object-fit:contain;background:#e8dfd1}.map-step{position:absolute;left:6vw;bottom:7vh;width:min(430px,85vw);padding:1.2rem 1.4rem;background:rgba(6,28,36,.9);color:#fff;border-left:3px solid var(--sand);opacity:0;transform:translateY(12px);transition:.25s}.map-step.active{opacity:1;transform:none}.map-step b{font:1.7rem var(--serif);display:block}.golf-intro{background:linear-gradient(90deg,rgba(2,18,24,.86),rgba(2,18,24,.15)),url('../media/07_reserva_conchal_golf_aerial.jpg') center/cover;min-height:82vh;color:#fff;display:grid;align-items:end;padding:7vw}.golf-journey{background:#071b24;color:#fff}.hole{min-height:82vh;display:grid;grid-template-columns:.65fr 1.35fr;border-top:1px solid rgba(255,255,255,.15)}.hole-copy{padding:7vw;align-self:center}.hole-number{font:clamp(5rem,12vw,12rem)/.8 var(--serif);opacity:.16}.hole h3{font:400 clamp(2.3rem,5vw,5rem)/1 var(--serif);margin:.2rem 0}.hole p{max-width:540px;color:#b7c1c2}.hole-visual{min-height:55vh;background:linear-gradient(90deg,#071b24 0,transparent 45%),url('../media/07_reserva_conchal_golf_aerial.jpg') center/cover;display:grid;align-items:end;justify-items:end;padding:2rem}.hole-progress{letter-spacing:.2em;font-size:.72rem}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw}.geo-boundary{min-height:520px;background:linear-gradient(145deg,#0e5b65 0 36%,#decba7 37% 52%,#55734f 53%);border-radius:50%;display:grid;place-items:center;color:#fff;text-align:center}.geo-boundary b{font:2rem var(--serif);display:block}.footer{background:#06161c;color:#bdc7c8;padding:3rem 7vw;display:flex;justify-content:space-between;gap:2rem;align-items:center;font-size:.75rem}.source-note{font-size:.75rem;color:#7b8587}.source-note a{text-decoration:underline}.sw-shell{position:relative}.sw-shell .sw-topbar{display:none!important}.sw-shell .sw-stage{top:0}.sw-shell .sw-copy{left:7vw!important}.sw-shell .sw-copy__title{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:-.04em!important;font-size:clamp(2.4rem,4.5vw,4.8rem)!important}.sw-shell .sw-scene__still{object-fit:cover!important}.sw-shell .sw-route{right:2vw!important}.sw-shell .sw-sky{background:#071b24!important}.world-fallback{padding:5rem 7vw;background:#071b24;color:#fff}.world-fallback[hidden]{display:none}@media(max-width:980px){.nav-toggle{display:grid;place-items:center}.nav{display:none;position:absolute;left:0;right:0;top:100%;padding:1.2rem 5vw;background:#071b24;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.grid.three{grid-template-columns:1fr 1fr}.booking,.media-feature,.travel-grid{grid-template-columns:1fr}.media-feature img{max-height:70vh}.conveniences{grid-template-columns:repeat(2,1fr)}.conveniences span{border-bottom:1px solid var(--line)}.gallery figure,.gallery figure:nth-child(1),.gallery figure:nth-child(5){grid-column:span 6}.hole{grid-template-columns:1fr}.hole-visual{min-height:48vh}.quote-form,.concierge-form{grid-template-columns:1fr}.wide,.quote-result,.form-status{grid-column:auto}}@media(max-width:600px){.notice b{display:block;margin:0 0 .2rem}.display{font-size:11vw}.pad{padding:4rem 6vw}.grid.two,.grid.three{grid-template-columns:1fr}.actions .btn{width:100%}.gallery figure,.gallery figure:nth-child(1),.gallery figure:nth-child(5){grid-column:1/-1;min-height:320px}.conveniences{grid-template-columns:1fr}.conveniences span{border-right:0}.floorplan{padding:2rem 1rem}.map-step{left:5vw}.hole-copy{padding:4rem 6vw}.footer{flex-direction:column;align-items:flex-start}.sw-shell .sw-copy{left:6vw!important;right:6vw!important;width:auto!important}.sw-shell .sw-route{display:none!important}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
