/* Page-level visual system for Summit Resort's independent content pages. */
main:not(.home-page) .page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:390px;display:flex;align-items:center;background:#111317;color:#fff}
main:not(.home-page) .page-hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(17,19,23,.88),rgba(17,19,23,.52) 56%,rgba(17,19,23,.08)),var(--page-hero-image,url('/assets/images/home-food.webp'));background-position:center;background-size:cover;transform:scale(1.015)}
main:not(.home-page) .page-hero:after{content:"Illustrative scene";position:absolute;right:clamp(1rem,5vw,4rem);bottom:1.1rem;color:#fff;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;text-shadow:0 1px 8px #111}
main:not(.home-page) .page-hero-inner{width:min(1180px,100%);margin:auto;padding:4.5rem 1.5rem 5rem;max-width:1180px}
main:not(.home-page) .page-hero .crumb{color:#fff;opacity:.85;margin-bottom:1.2rem}
main:not(.home-page) .page-hero .eyebrow{color:#ffc14d}
main:not(.home-page) .page-hero h1{max-width:820px;font-size:clamp(2.8rem,6vw,5.3rem);line-height:1.02;letter-spacing:-.04em;margin:.6rem 0 1.1rem;text-wrap:balance}
main:not(.home-page) .page-hero p{max-width:680px;color:rgba(255,255,255,.9);font-size:clamp(1.04rem,1.5vw,1.25rem);line-height:1.65}
main.page-about .page-hero{--page-hero-image:url('/assets/images/about-scene.webp')}
main.page-conferencing .page-hero{--page-hero-image:url('/assets/images/conference-scene.webp')}
main.page-events .page-hero{--page-hero-image:url('/assets/images/wedding-scene.webp')}
main.page-dining .page-hero,main.page-catering .page-hero{--page-hero-image:url('/assets/images/home-food.webp')}
main.page-team-building .page-hero{--page-hero-image:url('/assets/images/team-building-scene.webp')}
main.page-leisure .page-hero{--page-hero-image:url('/assets/images/home-family-pool.webp')}
main.page-gallery .page-hero{--page-hero-image:url('/assets/images/summit-exterior.jpg')}
main.page-testimonials .page-hero{--page-hero-image:url('/assets/images/event-dining.jpg')}
main.page-faqs .page-hero,main.page-contact .page-hero{--page-hero-image:url('/assets/images/summit-exterior.jpg')}
main:not(.home-page) .section{padding:clamp(3.5rem,7vw,6rem) 1.5rem}
main:not(.home-page) .section.alt{background:#f5f8fa}
main:not(.home-page) .section-inner{width:min(1180px,100%);margin:auto}
main:not(.home-page) h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;letter-spacing:-.03em;text-wrap:balance}
main:not(.home-page) h3{line-height:1.2}
main:not(.home-page) .split{align-items:center;gap:clamp(2rem,5vw,5rem)}
main:not(.home-page) .split>img{width:100%;height:clamp(300px,38vw,500px);object-fit:cover;border-radius:8px;box-shadow:0 20px 55px rgba(17,19,23,.15)}
main:not(.home-page) .grid{gap:1.2rem}
main:not(.home-page) .grid>article,main:not(.home-page) .card{border:1px solid #e3e8ec;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 12px 32px rgba(17,19,23,.055);transition:transform .22s ease,box-shadow .22s ease}
main:not(.home-page) .grid>article:hover,main:not(.home-page) .card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(17,19,23,.12)}
main:not(.home-page) .card img{width:100%;height:220px;object-fit:cover}
main:not(.home-page) .card-body{padding:1.4rem}
main:not(.home-page) .button{transition:transform .18s ease,box-shadow .18s ease}
main:not(.home-page) .button:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(245,160,0,.3)}
main:not(.home-page) .photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
main:not(.home-page) .photo-grid figure{margin:0;position:relative;overflow:hidden;border-radius:8px;min-height:220px;background:#111317}
main:not(.home-page) .photo-grid img{width:100%;height:100%;min-height:250px;object-fit:cover;transition:transform .4s ease}
main:not(.home-page) .photo-grid figure:hover img{transform:scale(1.045)}
main:not(.home-page) .photo-grid figcaption{position:absolute;inset:auto 0 0;padding:2.5rem 1rem 1rem;color:#fff;font-weight:700;background:linear-gradient(transparent,rgba(17,19,23,.82))}
main:not(.home-page) .section-head{text-align:center}
main:not(.home-page) .section-head>p{max-width:700px;margin:1rem auto}
main:not(.home-page) .checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 2rem;padding-left:1.25rem}
main:not(.home-page) .notice{border-left:4px solid var(--orange);background:#fff7e7;padding:1rem 1.25rem;border-radius:0 6px 6px 0}
main.page-faqs .section-inner>h3{margin:1.4rem 0 .25rem;padding-top:1rem;border-top:1px solid #e4e8eb;color:#16181b}
main.page-faqs .section-inner>h2{margin-bottom:1.5rem}
@media(max-width:720px){main:not(.home-page) .page-hero{min-height:360px}main:not(.home-page) .page-hero-inner{padding:3.4rem 1.2rem 4.2rem}main:not(.home-page) .page-hero h1{font-size:clamp(2.5rem,12vw,3.8rem)}main:not(.home-page) .section{padding:3.4rem 1.2rem}main:not(.home-page) .split{grid-template-columns:1fr}main:not(.home-page) .split>img{height:290px}main:not(.home-page) .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}main:not(.home-page) .photo-grid figure{min-height:180px}main:not(.home-page) .photo-grid img{min-height:190px}main:not(.home-page) .checklist{grid-template-columns:1fr}}
@media(max-width:430px){main:not(.home-page) .photo-grid{grid-template-columns:1fr}main:not(.home-page) .photo-grid figure,main:not(.home-page) .photo-grid img{min-height:230px}}
@media(prefers-reduced-motion:reduce){main:not(.home-page) .grid>article,main:not(.home-page) .card,main:not(.home-page) .photo-grid img{transition:none}}

main.page-faqs .page-faq-list{display:grid;gap:.75rem;max-width:920px}main.page-faqs .faq-item{border:1px solid #e1e5e9;border-radius:7px;background:#fff;padding:0 1.15rem}main.page-faqs .faq-item summary{cursor:pointer;list-style:none;padding:1rem 2rem 1rem 0;font-weight:700;position:relative}main.page-faqs .faq-item summary::-webkit-details-marker{display:none}main.page-faqs .faq-item summary:after{content:"+";position:absolute;right:0;color:var(--orange-deep);font-size:1.3rem}main.page-faqs .faq-item[open] summary:after{content:"−"}main.page-faqs .faq-item p{margin:0 0 1rem}

main:not(.home-page) .page-hero h1{color:#fff!important}

