:root{--ink:#173732;--pine:#23483c;--leaf:#80925d;--gold:#c6a263;--cream:#f6f2e9;--paper:#fffdf8;--line:#d9d6ca;--serif:Fraunces,Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(3.3rem,7vw,6.5rem);max-width:750px}h2{font-size:clamp(2.4rem,4.5vw,4.4rem)}h3{font-size:1.6rem}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:white;padding:.5rem}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:10px clamp(1.2rem,5vw,5.5rem);background:var(--paper);position:sticky;top:0;z-index:10;border-bottom:1px solid #eeeae1}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-family:var(--serif);line-height:1}.brand img{width:38px;height:52px;object-fit:contain}.brand b{display:block;letter-spacing:.02em}.brand small{display:block;font:600 .6rem var(--sans);letter-spacing:.2em;margin-top:3px}nav{display:flex;gap:clamp(1rem,2.5vw,2.2rem)}nav a,.socials a{color:var(--ink);text-decoration:none;font-size:.86rem;font-weight:600}nav a:hover,.socials a:hover{color:var(--leaf)}.menu-button{display:none}.hero{min-height:min(760px,calc(100vh - 84px));position:relative;overflow:hidden;background:var(--ink);color:white;padding:clamp(4rem,10vw,9rem) clamp(1.2rem,10vw,10rem);display:flex;align-items:center}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 52%,#54715b 0,transparent 23%),radial-gradient(circle at 73% 5%,#35584a 0,transparent 30%);opacity:.8}.hero-copy{position:relative;z-index:1}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.71rem;font-weight:700;color:var(--leaf);margin-bottom:1.3rem}.hero .eyebrow{color:#d8ca9b}.intro{font-size:clamp(1.05rem,1.5vw,1.3rem);max-width:570px;color:#e2e6de}.actions{display:flex;gap:1.4rem;align-items:center;margin-top:2.2rem}.button{display:inline-block;text-decoration:none;border:0;padding:.88rem 1.2rem;font:700 .82rem var(--sans);letter-spacing:.04em;cursor:pointer}.button-gold{background:var(--gold);color:#182d28}.button-outline{border:1px solid #e7e1d1;color:white;background:transparent}.button-dark{background:var(--ink);color:white}.text-link{font-weight:700;color:inherit;text-decoration:none}.text-link span{color:var(--gold);font-size:1.3em;margin-left:4px}.hero-crest{position:absolute;z-index:1;right:6%;bottom:-20%;height:105%;opacity:.26}.hero-crest img{height:100%;filter:saturate(.75)}.hero-note{position:absolute;bottom:1.5rem;right:clamp(1.2rem,5vw,5.5rem);z-index:2;text-transform:uppercase;font-size:.66rem;letter-spacing:.15em}.statement{max-width:1200px;margin:auto;padding:clamp(5rem,10vw,9rem) clamp(1.2rem,5vw,5.5rem);display:grid;grid-template-columns:1.15fr .85fr;gap:5rem}.statement p:last-child{font-size:1.18rem;color:#466258}.pillars{background:var(--cream);padding:0 clamp(1.2rem,5vw,5.5rem);display:grid;grid-template-columns:repeat(3,1fr)}.pillars article{padding:3rem 2rem 3.4rem;border-right:1px solid var(--line)}.pillars article:first-child{padding-left:0}.pillars article:last-child{border:0}.pillar-number,.vision-grid b{font:700 .76rem var(--sans);color:var(--gold);letter-spacing:.15em}.pillars p,.vision-grid p,.program-list p{color:#5b6e64}.ranch{display:grid;grid-template-columns:1fr 1fr;min-height:620px}.ranch-image{min-height:390px;background:#9da58e}.ranch-image img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}.ranch-copy{padding:clamp(4rem,9vw,8rem);display:flex;flex-direction:column;justify-content:center;background:#dce3d2}.ranch-copy p{max-width:480px}.vision{padding:clamp(5rem,10vw,9rem) clamp(1.2rem,5vw,5.5rem)}.section-heading{max-width:670px;margin-bottom:3rem}.section-heading>p:last-child{color:#587065}.vision-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.vision-grid article{padding:2rem 1.5rem;min-height:230px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.vision-grid h3{margin:2.4rem 0 .7rem}.programs{background:var(--pine);color:white;padding:clamp(5rem,10vw,9rem) clamp(1.2rem,5vw,5.5rem)}.program-list{border-top:1px solid #6b8479}.program-list article{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:1.6rem 0;border-bottom:1px solid #6b8479}.program-list h3{margin:0}.program-list p{margin:0;color:#d8dfd4}.journey{padding:clamp(5rem,10vw,9rem) clamp(1.2rem,20vw,20rem);text-align:center;background:linear-gradient(rgba(21,53,45,.86),rgba(21,53,45,.86)),url('assets/first-republic-ranch-property.jpg') center/cover;color:white}.journey h2{margin-bottom:1rem}.journey p:not(.eyebrow){max-width:600px;margin:0 auto 2rem;color:#e0e8d9}.support{padding:clamp(5rem,10vw,9rem) clamp(1.2rem,10vw,10rem);display:grid;grid-template-columns:1fr 1fr;gap:5rem;background:#e8e0cc}.support>div:last-child{font-size:1.12rem}.support-note{font-size:.75rem;margin-top:1rem;color:#667067}.contact{padding:clamp(5rem,10vw,9rem) clamp(1.2rem,10vw,10rem);display:grid;grid-template-columns:1fr 1fr;gap:7rem}.contact-details{display:flex;flex-direction:column;margin-top:2rem}.contact-details a{color:var(--ink);font-weight:600;text-decoration:none}.contact form{display:flex;flex-direction:column;gap:1rem}label{font-size:.8rem;font-weight:700}input,textarea{display:block;width:100%;margin-top:.35rem;border:1px solid #b8c0b6;padding:.8rem;font:1rem var(--sans);background:transparent}textarea{resize:vertical}.contact small{color:#637168}footer{background:#142d28;color:#dfe5d7;padding:3rem clamp(1.2rem,5vw,5.5rem);display:flex;justify-content:space-between;align-items:center;gap:2rem;font-size:.76rem}.footer-brand{color:white;text-decoration:none;font:bold 1.1rem var(--serif);letter-spacing:.05em}.footer-brand span{display:block;font:600 .55rem var(--sans);letter-spacing:.2em;margin-top:3px}.socials{display:flex;gap:1.2rem}.socials a{color:#dfe5d7}@media(max-width:760px){.site-header{height:70px}.menu-button{display:block;background:none;border:0;font:700 .77rem var(--sans);color:var(--ink);text-transform:uppercase;letter-spacing:.1em}.menu-button span,.menu-button span:before{display:inline-block;width:15px;height:1px;background:currentColor;vertical-align:middle;margin-left:5px;content:"";position:relative}.menu-button span:before{position:absolute;margin:5px 0 0 -15px}nav{display:none;position:absolute;top:69px;left:0;right:0;padding:1.5rem;background:var(--paper);flex-direction:column;gap:1rem;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{min-height:680px}.hero-crest{right:-20%;height:75%;bottom:-4%;opacity:.18}.statement,.support,.contact{grid-template-columns:1fr;gap:2.5rem}.pillars,.vision-grid{grid-template-columns:1fr}.pillars{padding:1rem 1.2rem}.pillars article,.pillars article:first-child{padding:2rem 0;border-right:0;border-bottom:1px solid var(--line)}.ranch{grid-template-columns:1fr}.ranch-copy{padding:4rem 1.2rem}.program-list article{grid-template-columns:1fr;gap:.7rem}.contact{padding-left:1.2rem;padding-right:1.2rem}footer{flex-direction:column;align-items:flex-start}.hero-note{left:1.2rem;right:auto}.actions{align-items:flex-start;flex-direction:column;gap:1rem}}
