@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@500;600;700&display=swap');
:root{--black:#080a09;--ink:#101310;--white:#f8f8f4;--muted:#a7aaa5;--line:#292d29;--green:#9fb79b;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;line-height:1.08;letter-spacing:-.035em;margin:0 0 18px}h1{font-size:clamp(2.7rem,6vw,6rem)}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{font-size:1.25rem}.skip{position:absolute;left:-9999px}.site-header{height:92px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;gap:32px;padding:0 max(24px,4vw);border-bottom:1px solid rgba(255,255,255,.16)}.brand{margin-right:auto}.brand img{width:190px;height:62px;object-fit:contain}.site-header ul,.site-footer ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}.site-header nav a{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--white);color:var(--black);padding:14px 22px;border:1px solid var(--white);font-weight:600;border-radius:2px}.btn:not(.btn-light){background:transparent;color:var(--white)}.nav-toggle{display:none}.hero{height:min(900px,100vh);min-height:720px;position:relative;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s}.hero-slide.active{opacity:1;z-index:1}.hero-slide>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.2) 70%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 55%)}.hero-copy{position:absolute;z-index:2;left:max(24px,7vw);bottom:12%;max-width:850px}.eyebrow,.kicker{font-size:.75rem;letter-spacing:.18em;font-weight:600;color:#d9ded7;margin-bottom:18px}.hero-text{font-size:clamp(1rem,1.5vw,1.25rem);max-width:760px;margin-bottom:28px;color:#e7e9e5}.hero-arrow{position:absolute;z-index:5;top:50%;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.3);color:#fff;width:50px;height:50px;border-radius:50%;font-size:2rem}.hero-arrow.prev{left:24px}.hero-arrow.next{right:24px}.section{max-width:var(--max);margin:auto;padding:110px 32px}.lead{font-size:1.15rem;color:#c4c7c2;max-width:820px;margin-bottom:44px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin:42px 0}.service-grid article{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:240px}.service-grid span{color:var(--green);font-size:.8rem}.service-grid p,.process p,.post-grid p{color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid #777;padding-bottom:3px}.process{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#111411;max-width:none;padding-left:max(32px,calc((100vw - var(--max))/2 + 32px));padding-right:max(32px,calc((100vw - var(--max))/2 + 32px))}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid var(--line);font-size:1.2rem}.process li b{color:var(--green);font-size:.8rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gallery-grid figure{margin:0;aspect-ratio:3/2;overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.025)}.contact-section{background:#f3f2ed;color:#0c0e0c}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:780px}.contact-wrap.image-right .contact-media{order:2}.contact-media img{width:100%;height:100%;object-fit:cover}.contact-copy{padding:90px max(32px,7vw)}.contact-copy .kicker{color:#5d665d}.cms-smart-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cms-form-field{margin:0!important}.cms-form-field:has(textarea){grid-column:1/-1}.cms-form-control{width:100%;background:transparent!important;border:1px solid #b7bab4!important;color:#111!important;border-radius:0!important;padding:14px!important}.cms-form-label{color:#343834!important}.cms-form-submit{grid-column:1/-1;border-radius:0!important;background:#0b0d0b!important}.cms-form-alert{grid-column:1/-1}.cms-form-alert-error{background:#fee2e2!important;color:#991b1b!important;border-color:#ef4444!important}.cms-form-alert-success{background:#dcfce7!important;color:#166534!important;border-color:#22c55e!important}.cms-field-error{color:#b91c1c!important}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:42px 0}.post-grid article{background:#111411;border:1px solid var(--line)}.post-grid article>div{padding:24px}.post-grid img{aspect-ratio:3/2;object-fit:cover;width:100%}.blog-page h1{font-size:clamp(2.6rem,5vw,5rem)}.pagination{display:flex;gap:8px}.pagination a{border:1px solid var(--line);padding:8px 13px}.content-page{padding-top:92px}.page-hero{width:100%;height:55vh;min-height:420px;object-fit:cover}.content-narrow{max-width:900px;margin:auto;padding:90px 30px}.prose{font-size:1.08rem;color:#d1d4cf}.prose h2,.prose h3{margin-top:48px;color:#fff}.prose p,.prose li{margin-bottom:18px}.site-footer{max-width:var(--max);margin:auto;padding:70px 32px 34px;border-top:1px solid var(--line);display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.site-footer ul{display:block}.site-footer small{grid-column:1/-1;color:#777}.social{display:grid;align-content:start;gap:6px}.to-top{position:fixed;right:22px;bottom:22px;z-index:30;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#000;box-shadow:0 8px 30px #0008}.status-page{min-height:100vh;display:grid;place-items:center;text-align:center;padding:30px}.status-page>div{max-width:720px}.fairway-videos-section{padding:100px 32px;max-width:var(--max);margin:auto}.fairway-video-grid{display:grid;grid-template-columns:repeat(var(--video-columns),1fr);gap:16px}.fairway-video-card{display:none;position:relative;aspect-ratio:16/9;background:#111;border:0;padding:0;overflow:hidden;color:#fff}.fairway-video-card.is-loaded{display:block}.fairway-video-card img{width:100%;height:100%;object-fit:cover}.fairway-video-shade{position:absolute;inset:0;background:#0005}.fairway-play{position:absolute;inset:0;display:grid;place-items:center}.fairway-play svg{width:60px;fill:#fff}.fairway-video-copy{position:absolute;left:18px;bottom:18px;text-align:left;display:grid}.fairway-video-copy em{font-size:.8rem}.fairway-video-lightbox{display:none;position:fixed;inset:0;z-index:100;background:#000e;place-items:center;padding:30px}.fairway-video-lightbox.is-open{display:grid}.fairway-video-player{width:min(1100px,90vw);aspect-ratio:16/9}.fairway-video-player iframe{width:100%;height:100%;border:0}.fairway-video-close{position:absolute;right:25px;top:20px;background:none;color:#fff;border:0;font-size:3rem}@media(max-width:900px){.site-header{height:78px}.header-cta{display:none}.nav-toggle{display:block;background:none;border:1px solid #777;color:#fff;padding:8px 12px}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#090b09;padding:25px}.site-header nav.open{display:block}.site-header ul{display:grid;gap:16px}.hero{min-height:680px}.service-grid{grid-template-columns:1fr 1fr}.process,.contact-wrap{grid-template-columns:1fr}.contact-media{height:480px}.contact-wrap.image-right .contact-media{order:0}.gallery-grid,.post-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.fairway-video-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.section{padding:78px 20px}.hero-copy{left:20px;right:20px;bottom:10%}.hero-arrow{top:auto;bottom:24px;width:42px;height:42px}.service-grid,.gallery-grid,.post-grid{grid-template-columns:1fr}.service-grid article{min-height:0}.process{padding:75px 20px;gap:40px}.contact-copy{padding:65px 20px}.cms-smart-form{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;padding:55px 20px}.site-footer small{grid-column:1}.fairway-video-grid{grid-template-columns:1fr}.brand img{width:155px}.page-hero{min-height:300px;height:42vh}}
/* Fairway Events v1.1 responsive corrections */
.site-header{width:100%;max-width:100vw}.has-sticky-menu .site-header{position:fixed;background:rgba(8,10,9,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.no-sticky-menu .site-header{position:absolute}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.book-section{padding:110px 0;overflow:hidden;background:#080a09}.gallery-header{max-width:900px;margin:0 auto 48px;padding:0 32px;text-align:center}.gallery-header p{color:var(--muted);font-size:1.08rem}.book-container{width:100%;overflow:hidden}.book-scroll{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}.book-scroll::-webkit-scrollbar{display:none}.book-scroll.grabbing{cursor:grabbing}.album-photo{flex:0 0 clamp(280px,31vw,430px);height:clamp(430px,48vw,650px);margin:0;overflow:hidden;scroll-snap-align:start;background:#111411}.album-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.album-photo:hover img{transform:scale(1.035)}.scroll-indicator{display:flex;justify-content:center;gap:28px;margin-top:26px;color:#a7aaa5;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.contact-wrap{align-items:stretch;min-height:0}.contact-media{min-height:760px}.contact-copy{min-width:0}.cms-smart-form{width:100%;max-width:900px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.cms-form-field{min-width:0!important}.cms-form-control{display:block;width:100%!important;max-width:100%;height:58px!important;min-height:58px!important;font:inherit!important}.cms-form-field textarea.cms-form-control{height:132px!important;min-height:132px!important;resize:vertical}.cms-form-submit{grid-column:1/-1!important;display:flex!important;width:100%!important;min-height:58px!important;align-items:center;justify-content:center;background:#080a09!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #080a09!important;font:600 1rem/1 'DM Sans',Arial,sans-serif!important;cursor:pointer}.cms-form-submit:hover{background:#222722!important}.cms-form-alert{width:100%;font-size:1rem;line-height:1.45}.cms-form-alert h3{font-size:1.2rem!important;letter-spacing:0!important}.field-error,.cms-field-error{display:block;margin-top:7px;font-size:.9rem;line-height:1.35;color:#b91c1c!important}
.blog-home,.blog-page{width:100%;max-width:1240px;overflow:hidden}.post-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.post-grid article{min-width:0;display:flex;flex-direction:column;overflow:hidden}.post-grid .post-image,.post-grid article>a:first-child{display:block;aspect-ratio:3/2;overflow:hidden;background:#121612}.post-grid img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.post-grid article>div{display:flex;flex:1;flex-direction:column;min-width:0}.post-grid h2,.post-grid h3{font-size:clamp(1.15rem,1.6vw,1.55rem);overflow-wrap:anywhere}.post-grid .text-link{margin-top:auto;align-self:flex-start}.blog-page{padding-top:150px}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:42px}.pagination a{min-width:42px;text-align:center}.pagination a.active{background:#f8f8f4;color:#080a09;border-color:#f8f8f4}.pagination .page-prev,.pagination .page-next{min-width:auto;padding-inline:18px}
.social-icons{display:flex!important;gap:10px;flex-wrap:wrap}.social-icons a{width:42px;height:42px;border:1px solid #444;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem}.social-icons a:hover{background:#fff;color:#000}
.status-body{min-height:100vh;background:radial-gradient(circle at 50% 35%,#1c241d 0,#0b0e0b 42%,#050605 100%);color:#fff}.status-page{min-height:100vh;padding:40px 24px;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.35))}.status-card{width:min(760px,100%);padding:64px 48px;border:1px solid rgba(255,255,255,.14);background:rgba(5,7,5,.72);box-shadow:0 30px 90px rgba(0,0,0,.35)}.status-logo{width:min(300px,75%);height:auto;max-height:110px;object-fit:contain;margin:0 auto 44px}.status-card h1{font-size:clamp(2.7rem,7vw,5.8rem)}.status-card p{font-size:1.15rem;color:#c8cec8}.status-line{display:block;width:72px;height:2px;background:#9fb79b;margin:34px auto 0}
@media(max-width:900px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-media{min-height:420px}.blog-page{padding-top:125px}.album-photo{flex-basis:55vw;height:70vw;max-height:620px}}
@media(max-width:600px){.cms-smart-form{grid-template-columns:1fr}.cms-form-field:has(textarea),.cms-form-submit,.cms-form-alert{grid-column:1}.post-grid{grid-template-columns:1fr}.blog-page{padding-top:110px}.album-photo{flex-basis:82vw;height:112vw;max-height:570px}.gallery-header{padding:0 20px}.status-card{padding:44px 22px}.contact-media{min-height:330px}.contact-copy{overflow:hidden}}
/* v1.2 gallery album parity + reliable drag controls */
.gallery-albums-scroll{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding:0 max(24px,calc((100vw - var(--max))/2 + 32px)) 28px;cursor:grab;touch-action:pan-y}.gallery-albums-scroll::-webkit-scrollbar{display:none}.gallery-albums-scroll.grabbing,.book-scroll.grabbing{cursor:grabbing;user-select:none}.gallery-album-card{position:relative;flex:0 0 clamp(280px,31vw,430px);height:clamp(330px,38vw,520px);overflow:hidden;background:#111;border:1px solid var(--line)}.gallery-album-card img{width:100%;height:100%;object-fit:cover;display:block}.album-overlay{position:absolute;inset:auto 0 0;padding:28px 24px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:#fff}.album-overlay h3{font-size:1.3rem;margin:0 0 5px}.album-overlay span{font-size:.8rem;color:#d0d3cf}.book-scroll{touch-action:pan-y}.gallery-step{appearance:none;border:0;background:transparent;color:#a7aaa5;font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:8px}.gallery-step:hover{color:#fff}@media(max-width:600px){.gallery-album-card{flex-basis:82vw;height:105vw}.gallery-albums-scroll{padding-left:20px;padding-right:20px}}

/* v1.3 aligned Wedding-style gallery */
.fairway-gallery-section{padding:110px 32px;max-width:var(--max);margin:0 auto;overflow:hidden}.fairway-gallery-page .fairway-gallery-section{padding-top:150px;min-height:70vh}.fairway-gallery-section .gallery-header{text-align:left;margin:0 0 42px;padding:0;max-width:760px}.gallery-back-link{display:inline-block;margin-top:18px;border-bottom:1px solid #777;padding-bottom:3px}.fairway-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%}.gallery-tile{position:relative;min-width:0;aspect-ratio:4/3;overflow:hidden;background:#111411;border:1px solid var(--line);margin:0}.gallery-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.gallery-album-tile:hover img{transform:scale(1.035)}.gallery-tile-overlay{position:absolute;inset:auto 0 0;padding:56px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.92));color:#fff}.gallery-tile-overlay h3{margin:4px 0 3px;font-size:1.25rem}.gallery-tile-overlay>span:last-child{font-size:.8rem;color:#ddd}.gallery-tile-type{font-size:.66rem;letter-spacing:.16em;color:#d7d9d5}.gallery-empty{color:var(--muted)}@media(max-width:900px){.fairway-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fairway-gallery-section{padding:90px 24px}.fairway-gallery-page .fairway-gallery-section{padding-top:125px}}@media(max-width:600px){.fairway-gallery-grid{grid-template-columns:1fr;gap:14px}.fairway-gallery-section{padding:76px 20px}.fairway-gallery-page .fairway-gallery-section{padding-top:105px}.gallery-tile{aspect-ratio:4/3}.gallery-tile-overlay{padding:48px 18px 17px}}

/* v1.4 responsive gallery lightbox */
.gallery-image-tile{cursor:zoom-in}.fairway-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:32px 90px}.fairway-lightbox.is-open{display:flex}.lightbox-open{overflow:hidden}.fairway-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.fairway-lightbox-stage img{display:block;max-width:min(1200px,100%);max-height:calc(100vh - 90px);width:auto;height:auto;object-fit:contain;box-shadow:0 16px 60px rgba(0,0,0,.35)}.fairway-lightbox-count{position:absolute;left:50%;bottom:0;transform:translateX(-50%);padding:7px 12px;background:rgba(0,0,0,.55);border-radius:999px;font-size:.82rem;letter-spacing:.08em;color:#fff}.fairway-lightbox-close,.fairway-lightbox-nav{position:absolute;z-index:2;border:0;color:#fff;background:rgba(255,255,255,.13);display:grid;place-items:center;cursor:pointer;border-radius:50%}.fairway-lightbox-close{right:22px;top:20px;width:48px;height:48px;font-size:2rem;line-height:1}.fairway-lightbox-nav{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:2.7rem;line-height:1}.fairway-lightbox-nav.prev{left:22px}.fairway-lightbox-nav.next{right:22px}.fairway-lightbox-close:hover,.fairway-lightbox-nav:hover{background:rgba(255,255,255,.22)}@media(max-width:900px){.fairway-lightbox{padding:70px 54px 44px}.fairway-lightbox-nav{width:46px;height:46px}.fairway-lightbox-nav.prev{left:8px}.fairway-lightbox-nav.next{right:8px}.fairway-lightbox-close{right:12px;top:12px}}@media(max-width:600px){.fairway-lightbox{padding:62px 8px 46px}.fairway-lightbox-stage img{max-height:calc(100dvh - 120px);max-width:100%}.fairway-lightbox-nav{top:auto;bottom:8px;transform:none;width:44px;height:44px}.fairway-lightbox-nav.prev{left:12px}.fairway-lightbox-nav.next{right:12px}.fairway-lightbox-count{bottom:10px}.fairway-lightbox-close{width:44px;height:44px}}

/* Fairway Events v1.6 gallery pagination */
.gallery-pagination{margin-top:38px;justify-content:flex-start}.gallery-pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--line);background:#101310;color:var(--white);transition:background .2s,color .2s,border-color .2s}.gallery-pagination a:hover,.gallery-pagination a.active{background:var(--white);color:var(--black);border-color:var(--white)}@media(max-width:600px){.gallery-pagination{justify-content:center;gap:6px}.gallery-pagination a{min-width:38px;padding:7px 10px}.gallery-pagination .page-prev,.gallery-pagination .page-next{flex:1 1 120px}}

/* Social brand icon fix */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Manrope:wght@500;600;700&display=swap');
:root{--black:#080a09;--ink:#101310;--white:#f8f8f4;--muted:#a7aaa5;--line:#292d29;--green:#9fb79b;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--white);font-family:'DM Sans',Arial,sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Manrope',Arial,sans-serif;line-height:1.08;letter-spacing:-.035em;margin:0 0 18px}h1{font-size:clamp(2.7rem,6vw,6rem)}h2{font-size:clamp(2.2rem,4vw,4rem)}h3{font-size:1.25rem}.skip{position:absolute;left:-9999px}.site-header{height:92px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;gap:32px;padding:0 max(24px,4vw);border-bottom:1px solid rgba(255,255,255,.16)}.brand{margin-right:auto}.brand img{width:190px;height:62px;object-fit:contain}.site-header ul,.site-footer ul{display:flex;gap:24px;list-style:none;margin:0;padding:0}.site-header nav a{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--white);color:var(--black);padding:14px 22px;border:1px solid var(--white);font-weight:600;border-radius:2px}.btn:not(.btn-light){background:transparent;color:var(--white)}.nav-toggle{display:none}.hero{height:min(900px,100vh);min-height:720px;position:relative;overflow:hidden}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s}.hero-slide.active{opacity:1;z-index:1}.hero-slide>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.2) 70%),linear-gradient(0deg,rgba(0,0,0,.45),transparent 55%)}.hero-copy{position:absolute;z-index:2;left:max(24px,7vw);bottom:12%;max-width:850px}.eyebrow,.kicker{font-size:.75rem;letter-spacing:.18em;font-weight:600;color:#d9ded7;margin-bottom:18px}.hero-text{font-size:clamp(1rem,1.5vw,1.25rem);max-width:760px;margin-bottom:28px;color:#e7e9e5}.hero-arrow{position:absolute;z-index:5;top:50%;border:1px solid rgba(255,255,255,.45);background:rgba(0,0,0,.3);color:#fff;width:50px;height:50px;border-radius:50%;font-size:2rem}.hero-arrow.prev{left:24px}.hero-arrow.next{right:24px}.section{max-width:var(--max);margin:auto;padding:110px 32px}.lead{font-size:1.15rem;color:#c4c7c2;max-width:820px;margin-bottom:44px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin:42px 0}.service-grid article{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:240px}.service-grid span{color:var(--green);font-size:.8rem}.service-grid p,.process p,.post-grid p{color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid #777;padding-bottom:3px}.process{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#111411;max-width:none;padding-left:max(32px,calc((100vw - var(--max))/2 + 32px));padding-right:max(32px,calc((100vw - var(--max))/2 + 32px))}.process ol{list-style:none;margin:0;padding:0}.process li{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid var(--line);font-size:1.2rem}.process li b{color:var(--green);font-size:.8rem}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gallery-grid figure{margin:0;aspect-ratio:3/2;overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.025)}.contact-section{background:#f3f2ed;color:#0c0e0c}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;min-height:780px}.contact-wrap.image-right .contact-media{order:2}.contact-media img{width:100%;height:100%;object-fit:cover}.contact-copy{padding:90px max(32px,7vw)}.contact-copy .kicker{color:#5d665d}.cms-smart-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cms-form-field{margin:0!important}.cms-form-field:has(textarea){grid-column:1/-1}.cms-form-control{width:100%;background:transparent!important;border:1px solid #b7bab4!important;color:#111!important;border-radius:0!important;padding:14px!important}.cms-form-label{color:#343834!important}.cms-form-submit{grid-column:1/-1;border-radius:0!important;background:#0b0d0b!important}.cms-form-alert{grid-column:1/-1}.cms-form-alert-error{background:#fee2e2!important;color:#991b1b!important;border-color:#ef4444!important}.cms-form-alert-success{background:#dcfce7!important;color:#166534!important;border-color:#22c55e!important}.cms-field-error{color:#b91c1c!important}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:42px 0}.post-grid article{background:#111411;border:1px solid var(--line)}.post-grid article>div{padding:24px}.post-grid img{aspect-ratio:3/2;object-fit:cover;width:100%}.blog-page h1{font-size:clamp(2.6rem,5vw,5rem)}.pagination{display:flex;gap:8px}.pagination a{border:1px solid var(--line);padding:8px 13px}.content-page{padding-top:92px}.page-hero{width:100%;height:55vh;min-height:420px;object-fit:cover}.content-narrow{max-width:900px;margin:auto;padding:90px 30px}.prose{font-size:1.08rem;color:#d1d4cf}.prose h2,.prose h3{margin-top:48px;color:#fff}.prose p,.prose li{margin-bottom:18px}.site-footer{max-width:var(--max);margin:auto;padding:70px 32px 34px;border-top:1px solid var(--line);display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.site-footer ul{display:block}.site-footer small{grid-column:1/-1;color:#777}.social{display:grid;align-content:start;gap:6px}.to-top{position:fixed;right:22px;bottom:22px;z-index:30;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#000;box-shadow:0 8px 30px #0008}.status-page{min-height:100vh;display:grid;place-items:center;text-align:center;padding:30px}.status-page>div{max-width:720px}.fairway-videos-section{padding:100px 32px;max-width:var(--max);margin:auto}.fairway-video-grid{display:grid;grid-template-columns:repeat(var(--video-columns),1fr);gap:16px}.fairway-video-card{display:none;position:relative;aspect-ratio:16/9;background:#111;border:0;padding:0;overflow:hidden;color:#fff}.fairway-video-card.is-loaded{display:block}.fairway-video-card img{width:100%;height:100%;object-fit:cover}.fairway-video-shade{position:absolute;inset:0;background:#0005}.fairway-play{position:absolute;inset:0;display:grid;place-items:center}.fairway-play svg{width:60px;fill:#fff}.fairway-video-copy{position:absolute;left:18px;bottom:18px;text-align:left;display:grid}.fairway-video-copy em{font-size:.8rem}.fairway-video-lightbox{display:none;position:fixed;inset:0;z-index:100;background:#000e;place-items:center;padding:30px}.fairway-video-lightbox.is-open{display:grid}.fairway-video-player{width:min(1100px,90vw);aspect-ratio:16/9}.fairway-video-player iframe{width:100%;height:100%;border:0}.fairway-video-close{position:absolute;right:25px;top:20px;background:none;color:#fff;border:0;font-size:3rem}@media(max-width:900px){.site-header{height:78px}.header-cta{display:none}.nav-toggle{display:block;background:none;border:1px solid #777;color:#fff;padding:8px 12px}.site-header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#090b09;padding:25px}.site-header nav.open{display:block}.site-header ul{display:grid;gap:16px}.hero{min-height:680px}.service-grid{grid-template-columns:1fr 1fr}.process,.contact-wrap{grid-template-columns:1fr}.contact-media{height:480px}.contact-wrap.image-right .contact-media{order:0}.gallery-grid,.post-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.fairway-video-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.section{padding:78px 20px}.hero-copy{left:20px;right:20px;bottom:10%}.hero-arrow{top:auto;bottom:24px;width:42px;height:42px}.service-grid,.gallery-grid,.post-grid{grid-template-columns:1fr}.service-grid article{min-height:0}.process{padding:75px 20px;gap:40px}.contact-copy{padding:65px 20px}.cms-smart-form{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr;padding:55px 20px}.site-footer small{grid-column:1}.fairway-video-grid{grid-template-columns:1fr}.brand img{width:155px}.page-hero{min-height:300px;height:42vh}}
/* Fairway Events v1.1 responsive corrections */
.site-header{width:100%;max-width:100vw}.has-sticky-menu .site-header{position:fixed;background:rgba(8,10,9,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.no-sticky-menu .site-header{position:absolute}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.book-section{padding:110px 0;overflow:hidden;background:#080a09}.gallery-header{max-width:900px;margin:0 auto 48px;padding:0 32px;text-align:center}.gallery-header p{color:var(--muted);font-size:1.08rem}.book-container{width:100%;overflow:hidden}.book-scroll{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}.book-scroll::-webkit-scrollbar{display:none}.book-scroll.grabbing{cursor:grabbing}.album-photo{flex:0 0 clamp(280px,31vw,430px);height:clamp(430px,48vw,650px);margin:0;overflow:hidden;scroll-snap-align:start;background:#111411}.album-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.album-photo:hover img{transform:scale(1.035)}.scroll-indicator{display:flex;justify-content:center;gap:28px;margin-top:26px;color:#a7aaa5;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.contact-wrap{align-items:stretch;min-height:0}.contact-media{min-height:760px}.contact-copy{min-width:0}.cms-smart-form{width:100%;max-width:900px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}.cms-form-field{min-width:0!important}.cms-form-control{display:block;width:100%!important;max-width:100%;height:58px!important;min-height:58px!important;font:inherit!important}.cms-form-field textarea.cms-form-control{height:132px!important;min-height:132px!important;resize:vertical}.cms-form-submit{grid-column:1/-1!important;display:flex!important;width:100%!important;min-height:58px!important;align-items:center;justify-content:center;background:#080a09!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #080a09!important;font:600 1rem/1 'DM Sans',Arial,sans-serif!important;cursor:pointer}.cms-form-submit:hover{background:#222722!important}.cms-form-alert{width:100%;font-size:1rem;line-height:1.45}.cms-form-alert h3{font-size:1.2rem!important;letter-spacing:0!important}.field-error,.cms-field-error{display:block;margin-top:7px;font-size:.9rem;line-height:1.35;color:#b91c1c!important}
.blog-home,.blog-page{width:100%;max-width:1240px;overflow:hidden}.post-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.post-grid article{min-width:0;display:flex;flex-direction:column;overflow:hidden}.post-grid .post-image,.post-grid article>a:first-child{display:block;aspect-ratio:3/2;overflow:hidden;background:#121612}.post-grid img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.post-grid article>div{display:flex;flex:1;flex-direction:column;min-width:0}.post-grid h2,.post-grid h3{font-size:clamp(1.15rem,1.6vw,1.55rem);overflow-wrap:anywhere}.post-grid .text-link{margin-top:auto;align-self:flex-start}.blog-page{padding-top:150px}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:42px}.pagination a{min-width:42px;text-align:center}.pagination a.active{background:#f8f8f4;color:#080a09;border-color:#f8f8f4}.pagination .page-prev,.pagination .page-next{min-width:auto;padding-inline:18px}
.social-icons{display:flex!important;gap:10px;flex-wrap:wrap}.social-icons a{width:42px;height:42px;border:1px solid #444;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem}.social-icons a:hover{background:#fff;color:#000}
.status-body{min-height:100vh;background:radial-gradient(circle at 50% 35%,#1c241d 0,#0b0e0b 42%,#050605 100%);color:#fff}.status-page{min-height:100vh;padding:40px 24px;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.35))}.status-card{width:min(760px,100%);padding:64px 48px;border:1px solid rgba(255,255,255,.14);background:rgba(5,7,5,.72);box-shadow:0 30px 90px rgba(0,0,0,.35)}.status-logo{width:min(300px,75%);height:auto;max-height:110px;object-fit:contain;margin:0 auto 44px}.status-card h1{font-size:clamp(2.7rem,7vw,5.8rem)}.status-card p{font-size:1.15rem;color:#c8cec8}.status-line{display:block;width:72px;height:2px;background:#9fb79b;margin:34px auto 0}
@media(max-width:900px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-media{min-height:420px}.blog-page{padding-top:125px}.album-photo{flex-basis:55vw;height:70vw;max-height:620px}}
@media(max-width:600px){.cms-smart-form{grid-template-columns:1fr}.cms-form-field:has(textarea),.cms-form-submit,.cms-form-alert{grid-column:1}.post-grid{grid-template-columns:1fr}.blog-page{padding-top:110px}.album-photo{flex-basis:82vw;height:112vw;max-height:570px}.gallery-header{padding:0 20px}.status-card{padding:44px 22px}.contact-media{min-height:330px}.contact-copy{overflow:hidden}}
/* v1.2 gallery album parity + reliable drag controls */
.gallery-albums-scroll{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;padding:0 max(24px,calc((100vw - var(--max))/2 + 32px)) 28px;cursor:grab;touch-action:pan-y}.gallery-albums-scroll::-webkit-scrollbar{display:none}.gallery-albums-scroll.grabbing,.book-scroll.grabbing{cursor:grabbing;user-select:none}.gallery-album-card{position:relative;flex:0 0 clamp(280px,31vw,430px);height:clamp(330px,38vw,520px);overflow:hidden;background:#111;border:1px solid var(--line)}.gallery-album-card img{width:100%;height:100%;object-fit:cover;display:block}.album-overlay{position:absolute;inset:auto 0 0;padding:28px 24px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:#fff}.album-overlay h3{font-size:1.3rem;margin:0 0 5px}.album-overlay span{font-size:.8rem;color:#d0d3cf}.book-scroll{touch-action:pan-y}.gallery-step{appearance:none;border:0;background:transparent;color:#a7aaa5;font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;padding:8px}.gallery-step:hover{color:#fff}@media(max-width:600px){.gallery-album-card{flex-basis:82vw;height:105vw}.gallery-albums-scroll{padding-left:20px;padding-right:20px}}

/* v1.3 aligned Wedding-style gallery */
.fairway-gallery-section{padding:110px 32px;max-width:var(--max);margin:0 auto;overflow:hidden}.fairway-gallery-page .fairway-gallery-section{padding-top:150px;min-height:70vh}.fairway-gallery-section .gallery-header{text-align:left;margin:0 0 42px;padding:0;max-width:760px}.gallery-back-link{display:inline-block;margin-top:18px;border-bottom:1px solid #777;padding-bottom:3px}.fairway-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;width:100%}.gallery-tile{position:relative;min-width:0;aspect-ratio:4/3;overflow:hidden;background:#111411;border:1px solid var(--line);margin:0}.gallery-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}.gallery-album-tile:hover img{transform:scale(1.035)}.gallery-tile-overlay{position:absolute;inset:auto 0 0;padding:56px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.92));color:#fff}.gallery-tile-overlay h3{margin:4px 0 3px;font-size:1.25rem}.gallery-tile-overlay>span:last-child{font-size:.8rem;color:#ddd}.gallery-tile-type{font-size:.66rem;letter-spacing:.16em;color:#d7d9d5}.gallery-empty{color:var(--muted)}@media(max-width:900px){.fairway-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fairway-gallery-section{padding:90px 24px}.fairway-gallery-page .fairway-gallery-section{padding-top:125px}}@media(max-width:600px){.fairway-gallery-grid{grid-template-columns:1fr;gap:14px}.fairway-gallery-section{padding:76px 20px}.fairway-gallery-page .fairway-gallery-section{padding-top:105px}.gallery-tile{aspect-ratio:4/3}.gallery-tile-overlay{padding:48px 18px 17px}}

/* v1.4 responsive gallery lightbox */
.gallery-image-tile{cursor:zoom-in}.fairway-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;padding:32px 90px}.fairway-lightbox.is-open{display:flex}.lightbox-open{overflow:hidden}.fairway-lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.fairway-lightbox-stage img{display:block;max-width:min(1200px,100%);max-height:calc(100vh - 90px);width:auto;height:auto;object-fit:contain;box-shadow:0 16px 60px rgba(0,0,0,.35)}.fairway-lightbox-count{position:absolute;left:50%;bottom:0;transform:translateX(-50%);padding:7px 12px;background:rgba(0,0,0,.55);border-radius:999px;font-size:.82rem;letter-spacing:.08em;color:#fff}.fairway-lightbox-close,.fairway-lightbox-nav{position:absolute;z-index:2;border:0;color:#fff;background:rgba(255,255,255,.13);display:grid;place-items:center;cursor:pointer;border-radius:50%}.fairway-lightbox-close{right:22px;top:20px;width:48px;height:48px;font-size:2rem;line-height:1}.fairway-lightbox-nav{top:50%;transform:translateY(-50%);width:54px;height:54px;font-size:2.7rem;line-height:1}.fairway-lightbox-nav.prev{left:22px}.fairway-lightbox-nav.next{right:22px}.fairway-lightbox-close:hover,.fairway-lightbox-nav:hover{background:rgba(255,255,255,.22)}@media(max-width:900px){.fairway-lightbox{padding:70px 54px 44px}.fairway-lightbox-nav{width:46px;height:46px}.fairway-lightbox-nav.prev{left:8px}.fairway-lightbox-nav.next{right:8px}.fairway-lightbox-close{right:12px;top:12px}}@media(max-width:600px){.fairway-lightbox{padding:62px 8px 46px}.fairway-lightbox-stage img{max-height:calc(100dvh - 120px);max-width:100%}.fairway-lightbox-nav{top:auto;bottom:8px;transform:none;width:44px;height:44px}.fairway-lightbox-nav.prev{left:12px}.fairway-lightbox-nav.next{right:12px}.fairway-lightbox-count{bottom:10px}.fairway-lightbox-close{width:44px;height:44px}}

/* Fairway Events v1.6 gallery pagination */
.gallery-pagination{margin-top:38px;justify-content:flex-start}.gallery-pagination a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--line);background:#101310;color:var(--white);transition:background .2s,color .2s,border-color .2s}.gallery-pagination a:hover,.gallery-pagination a.active{background:var(--white);color:var(--black);border-color:var(--white)}@media(max-width:600px){.gallery-pagination{justify-content:center;gap:6px}.gallery-pagination a{min-width:38px;padding:7px 10px}.gallery-pagination .page-prev,.gallery-pagination .page-next{flex:1 1 120px}}
/* Social brand icons */
.social-icons a{width:42px;height:42px;border:1px solid #444;border-radius:50%;display:grid;place-items:center;transition:background .2s,color .2s,border-color .2s}.social-icons a svg{width:20px;height:20px;display:block;fill:currentColor}.social-icons a:hover,.social-icons a:focus-visible{background:#fff;color:#000;border-color:#fff}.social-icons a:focus-visible{outline:2px solid #fff;outline-offset:3px}


/* Fairway Events mobile date-field normalization (iOS Safari/Chrome) */
.cms-smart-form input[type="date"].cms-form-control{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:100%!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  padding:14px!important;
  line-height:28px!important;
  font:inherit!important;
  background-color:transparent!important;
  border:1px solid #b7bab4!important;
  border-radius:0!important;
  color:#111!important;
}
.cms-smart-form input[type="date"].cms-form-control::-webkit-date-and-time-value{
  display:block;
  min-height:28px;
  line-height:28px;
  text-align:left;
  margin:0;
}
.cms-smart-form input[type="date"].cms-form-control::-webkit-datetime-edit{
  display:block;
  padding:0;
  line-height:28px;
}
.cms-smart-form input[type="date"].cms-form-control::-webkit-calendar-picker-indicator{
  margin:0;
  padding:4px;
  cursor:pointer;
}
@media(max-width:600px){
  .cms-smart-form input[type="date"].cms-form-control{
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
  }
}

/* Fairway Events v1.7 contact-form row alignment */
.cms-smart-form .cms-form-field:has(input[type="date"]){
  position:relative;
}
.cms-smart-form .cms-form-field:has(input[type="date"]) > .cms-form-label{
  position:absolute;
  left:0;
  bottom:calc(100% + 8px);
  margin:0!important;
  line-height:1.25;
  white-space:nowrap;
}
@media(max-width:600px){
  .cms-smart-form .cms-form-field:has(input[type="date"]) > .cms-form-label{
    position:static;
    display:block;
    margin:0 0 8px!important;
    white-space:normal;
  }
}

/* Fairway Events contact form: keep two-column controls aligned whether labels are shown or hidden */
@media (min-width:601px){
  .cms-smart-form .cms-form-field{
    position:relative;
    padding-top:36px!important;
  }
  .cms-smart-form .cms-form-field > .cms-form-label{
    position:absolute!important;
    top:0!important;
    left:0!important;
    bottom:auto!important;
    margin:0!important;
    line-height:1.25!important;
    white-space:nowrap;
  }
  /* A hidden/missing label leaves the same reserved label row, so its control stays aligned. */
  .cms-smart-form .cms-form-field > .cms-form-label[hidden],
  .cms-smart-form .cms-form-field > .cms-form-label.is-hidden,
  .cms-smart-form .cms-form-field > .cms-form-label.cms-label-hidden{
    display:none!important;
  }
  .cms-smart-form .cms-form-field:has(textarea){
    padding-top:36px!important;
  }
}
@media (max-width:600px){
  .cms-smart-form .cms-form-field{
    padding-top:0!important;
  }
  .cms-smart-form .cms-form-field > .cms-form-label{
    position:static!important;
    display:block;
    margin:0 0 8px!important;
    white-space:normal;
  }
  .cms-smart-form .cms-form-field > .cms-form-label[hidden],
  .cms-smart-form .cms-form-field > .cms-form-label.is-hidden,
  .cms-smart-form .cms-form-field > .cms-form-label.cms-label-hidden{
    display:none!important;
    margin:0!important;
  }
}
