/* G7 global: variables, base, layout, components, responsive */
@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#0a0b0b;--paper:#f8f5ef;--gold:#ffc619;--gold-dark:#b87900;--line:#d8d3cb;--muted:#d5d5d5;--max:1320px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{margin:0;background:var(--ink);color:#111;font-family:Inter,Arial,Helvetica,sans-serif;font-size:16px;line-height:1.35;-webkit-font-smoothing:antialiased}button,a,summary{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:800;letter-spacing:-.045em;line-height:1.04}h2{font-size:clamp(25px,2.6vw,37px)}h3{font-size:18px}p{line-height:1.3}em{font-style:normal;color:var(--gold)}.section-light em{color:#a96e00}.container{width:calc(100% - 100px);max-width:var(--max);margin-inline:auto}.icon{display:inline-block;width:28px;height:28px;flex:none;vertical-align:middle}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:42px;padding:11px 25px;border:1px solid transparent;border-radius:6px;font-size:14px;font-weight:800;line-height:1.15;letter-spacing:-.02em;transition:filter .15s,background .15s;white-space:nowrap}.button .icon{width:18px;height:18px;stroke-width:2.5}.button:hover{filter:brightness(1.1)}.button-gold{background:linear-gradient(#ffe883,#ffd02a 48%,#efa900);color:#080909;border-color:#ffc638;box-shadow:inset 0 1px 0 #fff6}.button-outline{border-color:#e7e5df;background:#0003;color:#fff;box-shadow:inset 0 0 0 1px #ffffff18}.button-light{background:transparent;border-color:#b57900;color:#111}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--gold);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.015em;line-height:1.2;margin-bottom:5px}.eyebrow>span{width:72px;height:1px;background:currentColor}.section-light .eyebrow{color:#a96e00}.centered{justify-content:center}.actions{display:flex;gap:30px;align-items:center;margin-top:13px}.section-dark{color:#fff;background:radial-gradient(ellipse at top,#191a1a,#080909 65%)}.section-light{background:var(--paper)}:focus-visible{outline:3px solid #e6a700;outline-offset:5px}.skip-link{position:fixed;top:8px;left:12px;z-index:100;background:#fff;color:#000;padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.text-link,.nav-link{background:none;border:0;padding:0;text-align:left;cursor:pointer}.text-link:hover,a:hover{text-decoration:none}.text-link:hover,.footer-grid a:hover,.legal-links button:hover{color:var(--gold)}
/* Shared header and traditional navigation */
.site-header{position:absolute;inset:0 0 auto;z-index:10;color:#fff;background:linear-gradient(#050606e8,#05060640)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:65px}.brand{display:block;flex:none;width:205px}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:25px;font-size:14px;white-space:nowrap}.site-header nav>a,.nav-link,summary{font-size:14px;font-weight:500;line-height:1.4}.site-header nav>a.active{position:relative;font-weight:700}.active:after{content:'';position:absolute;bottom:-10px;left:0;right:0;height:2px;background:var(--gold)}.services-menu{position:relative}.services-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:3px}.services-menu summary::-webkit-details-marker{display:none}.services-menu summary .icon{width:14px;height:14px}.dropdown{position:absolute;top:34px;left:-16px;min-width:270px;padding:10px;background:#111;border:1px solid #605335;border-radius:6px;box-shadow:0 12px 30px #0009;display:grid;gap:3px}.dropdown a{display:block;padding:9px 10px;border-radius:3px}.dropdown a:hover{background:#ffffff12;color:var(--gold)}.site-header .button{font-size:12px;min-height:38px;padding:8px 13px;gap:7px}.login-button .icon{color:var(--gold)}.menu-toggle{display:none;background:transparent;color:var(--gold);border:1px solid #7b6b36;border-radius:5px;padding:7px}.site-header nav>.button{font-weight:700}
/* Shared scenic banners and footer */
.scenic-banner{color:#fff;background-image:linear-gradient(#08080835,#000c),url('/assets/img/home/mountains.webp');background-position:center 55%;background-size:cover}.banner-layout{display:flex;align-items:center;gap:28px}.banner-layout .button{margin-left:auto}.banner-icon{width:62px;height:62px;color:var(--gold)}.site-footer{color:#fff;background:radial-gradient(ellipse at top,#171818,#070808 68%)}.footer-grid{display:grid;grid-template-columns:1.15fr 1fr .8fr 1.1fr;gap:65px;padding-block:19px 20px;font-size:14px;line-height:1.4}.footer-grid h2{font-size:16px;letter-spacing:-.02em;margin:0 0 9px;font-weight:700}.footer-grid ul{margin:0;padding:0;list-style:none}.footer-grid li{margin:2px 0}.footer-grid .brand{width:202px;margin-bottom:12px}.footer-brand{border-right:1px solid #777;padding-right:25px}.footer-brand p{font-size:14px}.email-icon{display:inline-flex;margin-top:12px}.email-icon .icon{width:24px;height:24px}.contact-list{display:grid;gap:9px}.contact-list li{display:flex;gap:13px;align-items:center}.contact-list .icon{color:var(--gold);width:21px;height:21px}.footer-legal{border-top:1px solid #555;color:#eee;font-size:12px}.legal-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:58px}.legal-links{display:flex;align-items:center;gap:15px}.g7-credit{display:flex;align-items:center;gap:5px;font-size:11px;white-space:nowrap}.g7-credit img{width:30px;height:25px;object-fit:contain}.legal-links button{font-size:12px}
/* Accessible preview destination dialog */
dialog{width:min(520px,calc(100% - 36px));padding:35px;border:1px solid #b68a13;border-radius:12px;background:var(--paper);color:#161616;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}dialog .eyebrow{color:#926000}dialog h2{font-size:29px;margin:10px 20px 16px 0}dialog p:not(.eyebrow){line-height:1.65;margin-bottom:24px}.dialog-close{position:absolute;right:12px;top:12px;background:none;border:0;padding:5px}.dialog-close .icon{width:23px;height:23px}
@media(min-width:1441px){.site-header nav{gap:28px}}
@media(max-width:1250px){.container{width:calc(100% - 70px)}.site-header nav{gap:17px}.brand{width:180px}.site-header .button{padding:8px 10px}.footer-grid{gap:30px}}
@media(max-width:960px){.header-inner{min-height:70px}.brand{width:185px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#101111;border-bottom:1px solid #8d691e;padding:22px 35px;max-height:calc(100dvh - 70px);overflow:auto;box-shadow:0 10px 25px #0008;white-space:normal}.site-header nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.site-header nav>a,.site-header .nav-link,.services-menu summary{padding:12px 0;min-height:44px;font-size:16px}.site-header nav>.button{margin-top:12px}.active:after{display:none}.dropdown{position:static;box-shadow:none;border:0;border-left:1px solid var(--gold);margin:2px 0 10px;background:#1a1b1b;min-width:0}.dropdown a{font-size:14px}.footer-grid{gap:25px;grid-template-columns:1fr 1fr}.footer-brand{border:0}.legal-inner{flex-wrap:wrap;padding-block:15px}.legal-links{margin-left:auto}.g7-credit{margin-left:auto}}
@media(max-width:650px){.container{width:calc(100% - 36px)}body{font-size:15px}h2{font-size:27px}.eyebrow{font-size:12px}.button{font-size:13px;min-height:44px;padding:12px 18px;gap:12px}.actions{gap:12px;flex-wrap:wrap}.banner-layout{gap:15px;flex-wrap:wrap}.banner-layout .button{margin-left:0}.banner-icon{width:44px;height:44px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 18px;padding-block:25px}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid,.footer-brand p{font-size:13px}.footer-grid .brand{width:185px}.legal-inner{align-items:center;justify-content:center;text-align:center;gap:16px;padding-block:20px;font-size:11px}.legal-links,.g7-credit{margin:0}.legal-links{gap:10px}.legal-links button{font-size:11px}.desktop-break{display:none}dialog{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(min-width:961px) and (max-width:1250px){.site-header .brand{width:165px}.site-header nav{gap:14px}.site-header nav>a,.site-header .nav-link,.services-menu summary{font-size:12px}.site-header .button{font-size:11px;padding:8px 10px}.header-inner{gap:16px}}
@media(min-width:961px) and (max-width:1080px){.site-header .brand{width:150px}.site-header nav{gap:11px}.site-header .button{font-size:10px;padding:8px}.site-header nav>a,.site-header .nav-link,.services-menu summary{font-size:11px}.header-inner{gap:12px}}

@media(min-width:961px) and (max-width:1100px){.footer-grid{font-size:12px;gap:35px}.footer-brand p{font-size:12px}.footer-grid .brand{width:175px}.footer-grid h2{font-size:14px}.legal-inner{gap:15px;font-size:10px}.legal-links{gap:10px}.legal-links button{font-size:10px}.g7-credit{font-size:9px}.g7-credit img{width:25px;height:22px}}

.social-links{display:flex;align-items:center;gap:18px;margin-top:15px}.social-links button{padding:0;border:0;background:none;color:white;display:grid;place-items:center;width:22px;height:24px}.social-links svg{width:22px;height:22px}.social-links .email-icon{margin:0}.social-links button:hover{color:var(--gold)}

.site-header .services-menu summary.active{position:relative;font-weight:700}.services-menu .dropdown a[aria-current="page"]{color:var(--gold)}
