/*
Theme Name: GSL Stillwell
Author: GSL Design
Description: Architectural Scottsdale demo for the GSL Realtor Launch collection. Requires GSL Realtor Core and ACF PRO.
Version: 0.1.0
Requires PHP: 8.1
Text Domain: gsl-stillwell
*/
@font-face{font-family:'Tenor Sans';src:url('assets/fonts/tenor-sans.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:'Instrument Sans';src:url('assets/fonts/instrument-sans.ttf') format('truetype');font-display:swap;font-weight:400 700}
:root{--black:#000;--dark:#0d0d0d;--ivory:#f3f0eb;--white:#ece7e4;--muted:#aaa5a0;--line:#30302e;--ink:#292824;--width:1120px;--heading:'Tenor Sans',sans-serif;--body:'Instrument Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--black);color:var(--white);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #bd9460;outline-offset:5px}h1,h2,h3,h4{font-family:var(--heading);font-weight:400;text-transform:uppercase;line-height:1.13;margin:0 0 24px;letter-spacing:-.025em}h1{font-size:clamp(38px,4.6vw,64px)}h2{font-size:clamp(30px,3.1vw,44px)}h3{font-size:24px}h4{font-size:19px}p{margin:0 0 20px}p:last-child{margin-bottom:0}.wrap{width:min(var(--width),calc(100% - 64px));margin:auto}.section{padding:110px 0}.eyebrow,.micro{font-size:11px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.eyebrow{display:block;margin-bottom:20px}.muted{color:var(--muted)}.text-link{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;padding-bottom:7px;border-bottom:1px solid currentColor}.text-link span{margin-left:18px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid #8c8985;background:transparent;color:inherit;padding:14px 24px;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;min-height:46px;transition:background .2s,color .2s}.button:hover{background:var(--white);color:var(--black);text-decoration:none}.button.light{background:var(--white);color:var(--ink);border-color:var(--white)}.button.light:hover{background:#fff}.ivory{background:var(--ivory);color:var(--ink)}.ivory .muted,.ivory .eyebrow,.ivory .micro{color:#69645e}.ivory .button:hover{background:var(--ink);color:var(--ivory)}.skip-link{position:absolute;top:-100px;left:12px;z-index:10;background:var(--ivory);color:#000;padding:14px}.skip-link:focus{top:10px}.demo-banner{padding:7px 20px;text-align:center;font-size:10px;letter-spacing:.08em;background:#201f1c;color:#d9d3cb}.site-header{border-bottom:1px solid #222;padding:19px 34px;display:flex;align-items:center;gap:30px;position:relative;z-index:3;background:#000}.wordmark{font-family:var(--heading);font-size:21px;letter-spacing:.14em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.site-nav{margin:auto;display:flex;gap:29px}.site-nav a{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.site-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.header-cta{font-size:10px;padding:11px 20px;min-height:40px}.menu-toggle{display:none;background:none;border:1px solid #777;color:inherit;padding:8px 13px}.hero{position:relative;min-height:730px;height:calc(100svh - 105px);max-height:940px;display:grid;place-items:center;text-align:center;overflow:hidden}.hero-media>.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.2) 30%,rgba(0,0,0,.72) 80%,#000)}.hero-content{position:relative;z-index:1;padding:160px 24px 80px;max-width:920px}.hero h1{font-size:clamp(40px,5.4vw,74px);line-height:1.07;max-width:880px}.hero p{max-width:540px;margin:0 auto 32px;color:#d6d0c9}.hero .eyebrow{color:#e3dbd0}.hero-actions{display:flex;gap:24px;justify-content:center;align-items:center}.hero-caption{position:absolute;bottom:22px;left:0;right:0;z-index:1;font-size:10px;letter-spacing:.08em;color:#c3beb6}.statement{padding:95px 24px;text-align:center;max-width:760px;margin:auto}.statement h2{font-size:clamp(25px,2.8vw,38px);line-height:1.55}.feature-home{position:relative;min-height:630px;display:flex;align-items:flex-end}.feature-home>img{position:absolute;width:100%;height:100%;object-fit:cover}.feature-home:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.85))}.feature-summary{z-index:1;position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:70px 0}.feature-summary h2{margin-bottom:10px}.feature-summary p{color:#cbc6bf;font-size:14px}.feature-price{font-family:var(--heading);font-size:28px;margin-bottom:14px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.listing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.listing-card .photo{position:relative;overflow:hidden;aspect-ratio:1.28;display:block;margin-bottom:13px;background:#161614}.listing-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.listing-card .photo:hover img{transform:scale(1.025)}.photo-label{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;padding:25px 14px 13px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#f3eee8;font-size:9px;letter-spacing:.1em;text-transform:uppercase;gap:8px}.listing-card h3{font-size:22px;margin-bottom:8px}.listing-card .location{color:var(--muted);font-size:13px;margin-bottom:12px}.listing-meta{border-top:1px solid var(--line);padding-top:11px;display:flex;align-items:center;justify-content:space-between;gap:8px}.facts-mini{display:flex;gap:12px;font-size:11px;color:var(--muted)}.price{font-family:var(--heading);font-size:18px;white-space:nowrap}.ivory .listing-card .location,.ivory .facts-mini{color:#6a655f}.ivory .listing-meta{border-color:#d6d1c9}.communities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.community-card{position:relative;aspect-ratio:.8;display:flex;align-items:end;overflow:hidden}.community-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.community-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,rgba(0,0,0,.75))}.community-card>div{z-index:1;padding:22px;color:#fff}.community-card h3{font-size:21px;margin:0 0 6px}.community-card .micro{color:#e0d9cf;font-size:9px}.process{margin-top:90px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.process-card{background:#f9f8f5;padding:30px;min-height:225px}.step-number{font-family:var(--heading);font-size:30px;color:#85796a;display:block;margin-bottom:28px}.process-card h3{font-size:21px}.process-card p{color:#6b665f;font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.split>img,.split>.image-frame{width:100%;aspect-ratio:1;object-fit:cover}.split p{color:var(--muted);max-width:480px}.split .button{margin-top:10px}.editorial-quote{text-align:center;max-width:850px;margin:auto;padding:20px 24px 100px}.editorial-quote p{font-family:var(--heading);font-size:clamp(27px,3.2vw,42px);line-height:1.4;text-transform:uppercase}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.journal-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:58px 32px}.journal-card img{aspect-ratio:1.6;object-fit:cover;width:100%;margin-bottom:20px}.journal-card h3{font-size:25px;line-height:1.3;margin:12px 0}.journal-card p{font-size:15px;color:#6b655f}.journal-card .micro{font-size:10px}.inquiry-band{background:var(--dark);padding:80px 0;border-top:1px solid #1d1d1b;border-bottom:1px solid #1d1d1b}.inquiry-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.inquiry-inner h2{font-size:34px}.inquiry-inner p{color:var(--muted)}.site-footer{padding:85px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:55px}.footer-brand p{font-size:13px;color:var(--muted);max-width:290px;margin-top:24px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:13px}.footer-links .eyebrow{margin-bottom:10px}.footer-bottom{margin-top:70px;padding-top:24px;border-top:1px solid #242422;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}.page-intro{padding:130px 0 70px}.page-intro h1{max-width:1050px}.page-intro p{color:var(--muted);max-width:760px}.filter-band{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}.filter-inner{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.filter{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid #2d2d29;padding:9px 18px}.filter.active{border-color:#b5b1aa}.filter-count{margin-left:auto;font-size:11px;color:var(--muted)}.inventory{padding:80px 0 110px}.empty-state{padding:45px;border:1px solid var(--line)}.buyer-cta{padding:74px 0}.buyer-cta p{max-width:630px;color:#6b655f}.listing-title{padding:95px 0 35px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.listing-title h1{font-size:50px;margin-bottom:16px}.listing-title .price{font-size:30px}.listing-title p{color:var(--muted);font-size:14px}.gallery-main{aspect-ratio:1.5;object-fit:cover;width:100%}.gallery-thumbs{display:flex;gap:10px;margin:14px 0 10px;flex-wrap:wrap}.gallery-thumbs button{background:none;border:1px solid #3a3833;padding:3px;width:110px}.gallery-thumbs button[aria-pressed=true]{border-color:#eee}.gallery-thumbs img{height:70px;width:100%;object-fit:cover}.gallery-note{font-size:11px;color:var(--muted)}.facts-bar{margin:35px 0 65px;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}.facts-bar>div{padding:18px 10px;text-align:center;font-size:13px;border-right:1px solid var(--line)}.facts-bar>div:last-child{border:0}.detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:75px;padding-bottom:100px}.detail-copy h2{font-size:25px;margin-top:40px}.detail-copy h2:first-child{margin-top:0}.detail-copy p,.detail-copy ul{color:var(--muted)}.agent-box{border:1px solid var(--line);padding:28px;align-self:start}.agent-monogram{width:52px;height:52px;border:1px solid #6b6356;border-radius:50%;display:grid;place-items:center;font:20px var(--heading);margin-bottom:20px}.agent-box h3{font-size:22px;margin-bottom:8px}.agent-box>.micro{margin-bottom:24px;display:block}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}.demo-form label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#bbb5ac;display:block}.demo-form input,.demo-form select,.demo-form textarea{width:100%;color:var(--white);background:transparent;border:1px solid #42403a;border-radius:6px;padding:12px 14px;margin-top:8px;letter-spacing:0;text-transform:none;font-size:15px}.demo-form select{color-scheme:dark}.demo-form input::placeholder,.demo-form textarea::placeholder{color:#918d86}.span-all{grid-column:1/-1}.demo-form .button{margin-top:22px}.demo-form .form-disclosure{font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:18px}.demo-form .form-result{font-size:13px;margin-top:16px;color:#d7c6a6}.compact-form .form-fields{display:block}.compact-form .button{margin-top:14px}.contact-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:80px;padding-bottom:100px}.contact-info{padding:28px;border:1px solid var(--line);align-self:start}.contact-info h2{font-size:25px}.contact-info p{font-size:14px;color:var(--muted)}.info-row{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;font-size:13px}.faq{padding:0 0 110px}.faq details{border-top:1px solid var(--line);padding:24px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:22px;color:var(--muted)}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);max-width:750px;margin-top:18px}.wide-photo{width:100%;height:500px;object-fit:cover}.prose{max-width:740px;padding:70px 0 100px}.prose h2{font-size:31px;margin-top:50px}.prose h3{font-size:25px;margin-top:35px}.prose p,.prose li{color:var(--muted)}.ivory .prose p,.ivory .prose li{color:#625e57}.prose a{text-decoration:underline}.article-cover{width:100%;max-height:650px;object-fit:cover}.pagination{margin-top:45px;display:flex;gap:20px}.pagination .current{border-bottom:1px solid}.gform_wrapper input,.gform_wrapper textarea{background:transparent;color:inherit;border:1px solid var(--line)}
@media(max-width:1050px){.site-header{padding:18px 24px;gap:20px}.site-nav{gap:18px}.header-cta{display:none}.wordmark{font-size:18px}.wrap{width:calc(100% - 48px)}.split{gap:40px}.listing-grid{gap:35px 20px}.facts-mini{gap:8px;font-size:10px}.price{font-size:16px}.section{padding:85px 0}.footer-grid{gap:30px}.communities-grid{gap:16px}.detail-layout{gap:40px}.inquiry-inner{gap:45px}.contact-layout{gap:40px}.hero{min-height:650px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.demo-banner{font-size:9px;padding:7px 15px}.site-header{padding:18px 20px;justify-content:space-between}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;background:#090909;padding:28px 20px;flex-direction:column;gap:24px;border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav a{font-size:12px}.hero{height:720px;min-height:0;max-height:none}.hero-content{padding:110px 20px 60px}.hero h1{font-size:43px}.hero p{font-size:15px}.hero-actions{flex-direction:column;gap:24px}.hero-caption{font-size:9px}.statement{padding:70px 24px}.statement h2{font-size:27px}.feature-home{min-height:530px}.feature-summary{padding:35px 0;flex-wrap:wrap}.feature-summary h2{font-size:32px}.feature-price{font-size:23px}.section{padding:70px 0}.section-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:30px}.listing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 20px}.listing-card h3{font-size:19px}.listing-meta{align-items:start;flex-direction:column;gap:7px}.facts-mini{font-size:11px}.communities-grid{grid-template-columns:repeat(2,1fr)}.community-card>div{padding:16px}.community-card h3{font-size:20px}.three-col{grid-template-columns:1fr}.process{margin-top:65px}.process-card{min-height:0}.step-number{margin-bottom:20px}.split{grid-template-columns:1fr;gap:36px}.split>img{aspect-ratio:1.1}.editorial-quote{padding-bottom:65px}.journal-grid,.journal-grid.two{grid-template-columns:1fr;gap:40px}.journal-card h3{font-size:25px}.inquiry-inner{grid-template-columns:1fr;gap:32px}.inquiry-band{padding:60px 0}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px 25px}.footer-brand{grid-column:1/-1}.footer-bottom{margin-top:45px;flex-direction:column;gap:8px}.site-footer{padding-top:55px}.page-intro{padding:75px 0 45px}.page-intro h1{font-size:38px}.filter-inner{gap:8px}.filter{padding:8px 11px;font-size:9px}.filter-count{width:100%;margin:5px 0 0}.inventory{padding:50px 0 70px}.listing-title{padding:65px 0 25px;align-items:start;flex-direction:column}.listing-title h1{font-size:38px}.listing-title .price{font-size:26px}.gallery-main{aspect-ratio:1.15}.gallery-thumbs button{width:70px}.gallery-thumbs img{height:48px}.facts-bar{grid-template-columns:repeat(2,1fr);margin:25px 0 45px}.facts-bar>div{border-bottom:1px solid var(--line)}.detail-layout,.contact-layout{grid-template-columns:1fr;gap:45px;padding-bottom:65px}.detail-copy h2{font-size:25px}.form-fields{grid-template-columns:1fr}.agent-box{padding:24px}.faq{padding-bottom:70px}.faq h2{font-size:30px}.wide-photo{height:340px}.prose{padding:40px 0 70px}.prose h2{font-size:28px}.photo-label{font-size:8px;padding:20px 9px 9px}.listing-card .location{font-size:12px}}
@media(max-width:420px){.listing-grid{grid-template-columns:1fr}.listing-meta{flex-direction:row;align-items:center}.listing-card h3{font-size:22px}.listing-card .photo{aspect-ratio:1.3}.hero h1{font-size:38px}.community-card h3{font-size:18px}.wordmark{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.community-filter{display:flex;align-items:center;gap:15px;margin-bottom:40px;flex-wrap:wrap}.community-filter label{font-size:12px;color:var(--muted)}.community-filter select{background:#111;color:var(--white);border:1px solid #555;padding:10px;max-width:100%;min-height:44px}.community-filter .button{padding:10px 20px}

/* Stillwell motion: separate image entrance from the scroll translation. */
.hero-media{position:absolute;inset:0;transform:translate3d(0,var(--hero-parallax,0px),0)}
@media(prefers-reduced-motion:no-preference){
  .hero-media.is-parallax-active{will-change:transform}
  .hero-media.is-preparing .hero-photo{transform:scale(1.14);filter:blur(9px)}
  .hero-media.is-entering .hero-photo{animation:stillwell-hero-focus 1.9s cubic-bezier(.2,.65,.25,1) both;will-change:transform,filter}
  @keyframes stillwell-hero-focus{from{transform:scale(1.14);filter:blur(9px)}to{transform:scale(1);filter:blur(0)}}
  .motion-reveal{opacity:0;transform:translate3d(0,24px,0);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}
  .motion-reveal.is-revealed,.motion-reveal:focus-within{opacity:1;transform:translate3d(0,0,0)}
  .motion-reveal:focus-within{transition:none}
}
@media(max-width:760px){.motion-reveal{transition-delay:0ms;transform:translate3d(0,18px,0)}.motion-reveal.is-revealed,.motion-reveal:focus-within{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-media,.hero-photo,.motion-reveal{animation:none!important;transform:none!important;filter:none!important;opacity:1!important;transition:none!important;will-change:auto!important}}
@media print{.hero-media,.hero-photo,.motion-reveal{animation:none!important;transform:none!important;filter:none!important;opacity:1!important;transition:none!important}}
