:root{--ink:#283a24;--forest:#405d3d;--leaf:#4b775c;--gold:#bfa26a;--paper:#f4ece7;--white:#fff;--line:rgba(40,58,36,.18)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans","Sofia Pro",Arial,sans-serif;font-size:17px;line-height:1.65}
a{color:inherit}
img{display:block;max-width:100%}
.topbar{height:104px;padding:0 4vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:5}
.sv-logo{display:block;width:230px}.sv-logo img{width:100%;height:auto}
.prepared{text-align:center;line-height:1.25}.prepared small{display:block;text-transform:uppercase;letter-spacing:.22em;font-size:.58rem;color:var(--leaf);margin-bottom:.35rem}.prepared a{display:block}.prepared img{width:265px;height:auto}
.top-cta{justify-self:end;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;border-bottom:1px solid var(--ink);padding-bottom:3px}
.hero{min-height:calc(100vh - 104px);position:relative;display:flex;align-items:flex-end;color:white;overflow:hidden}
.hero-image{position:absolute;inset:0;background:url('assets/holiday-atrium.png') center/cover no-repeat;transform:scale(1.01)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,17,11,.88) 0%,rgba(8,17,11,.54) 47%,rgba(8,17,11,.12) 76%),linear-gradient(0deg,rgba(8,17,11,.58),transparent 55%)}
.hero-copy{position:relative;z-index:2;padding:7vw 7vw 7vw;max-width:780px}.kicker{text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;font-weight:600;margin:0 0 1.4rem}.gold{color:#8e733f}
.firm-badge{display:none;width:min(320px,78vw);margin-bottom:2.2rem;text-decoration:none}.firm-badge small{display:block;color:var(--paper);text-transform:uppercase;letter-spacing:.2em;font-size:.5rem;margin-bottom:.5rem}.firm-badge img{width:100%;height:auto;filter:grayscale(1) brightness(0) invert(1);opacity:.96}
h1,h2{font-family:"Libre Caslon Display","Marigold",Georgia,serif;font-weight:400;line-height:.94;letter-spacing:-.03em;margin:0}h1{font-size:clamp(4.3rem,9.2vw,9.4rem)}h2{font-size:clamp(3.1rem,6.2vw,6.5rem)}em{color:var(--gold);font-style:italic}
.lead{font-family:"Libre Caslon Display",serif;font-size:clamp(1.35rem,2.1vw,2rem);line-height:1.35;max-width:580px;margin:2rem 0}.button{display:inline-flex;gap:1.2rem;align-items:center;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;font-weight:600;padding:1rem 1.25rem;border:1px solid}.button.light{border-color:rgba(255,255,255,.55)}.button:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.hero-note{position:absolute;z-index:2;right:4vw;bottom:4vw;width:250px;padding:1.4rem;border-top:1px solid rgba(255,255,255,.65);display:grid;grid-template-columns:40px 1fr;gap:1rem;font-size:.82rem}.hero-note span{color:var(--gold)}.hero-note p{margin:0}
.section{padding:9vw 7vw}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end}.intro-grid .large,.idea-copy .large,.closing-card .large{font-family:"Libre Caslon Display","Marigold",serif;font-size:1.65rem;line-height:1.35}.intro-grid p:last-child{max-width:560px}
.idea{display:grid;grid-template-columns:1fr 1fr;min-height:780px}.idea-visual{position:relative;background:#ddd;overflow:hidden}.idea-visual img{width:100%;height:100%;object-fit:cover}.caption{position:absolute;left:1rem;bottom:.5rem;background:rgba(244,236,231,.94);padding:.4rem .65rem;font-size:.58rem;line-height:1.35;max-width:340px}.idea-copy{padding:8vw 7vw;display:flex;flex-direction:column;justify-content:center}.holiday .idea-copy{background:var(--ink);color:white}.advocacy .idea-copy{background:var(--forest);color:white}.number{align-self:flex-start;margin-bottom:4rem;padding-bottom:.45rem;border-bottom:1px solid currentColor;text-transform:uppercase;letter-spacing:.16em;font-size:.65rem}.idea-copy h2{margin-bottom:2.2rem}.idea-copy p:not(.kicker):not(.detail){max-width:630px}.idea-copy ul{list-style:none;padding:0;margin:1.2rem 0 2rem}.idea-copy li{padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.22);font-size:.86rem}.text-link{font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;text-decoration:none;border-bottom:1px solid;padding-bottom:.3rem;align-self:flex-start}.run-of-show{margin:1.4rem 0}.run-of-show div{display:grid;grid-template-columns:115px 1fr;gap:1rem;padding:.85rem 0;border-top:1px solid rgba(255,255,255,.25)}.run-of-show span{text-transform:uppercase;letter-spacing:.14em;font-size:.62rem;color:#e0cfa7}.run-of-show strong{font-weight:500}.detail{font-size:.78rem;color:#dae4da}
.why{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw;background:var(--paper)}.why-list article{display:grid;grid-template-columns:55px 1fr;gap:0 1rem;padding:1.4rem 0;border-top:1px solid var(--line)}.why-list span{grid-row:1/3;color:var(--gold);font-size:.7rem;letter-spacing:.16em}.why-list h3{margin:0;font-family:"Libre Caslon Display",serif;font-size:1.7rem;font-weight:400}.why-list p{margin:.35rem 0 0;color:#536057}
.image-break{height:72vh;min-height:560px;position:relative;overflow:hidden}.image-break img{width:100%;height:100%;object-fit:cover}.image-break:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,17,11,.65),transparent 65%)}blockquote{position:absolute;z-index:2;bottom:5vw;left:7vw;margin:0;color:white;font-family:"Libre Caslon Display",serif;font-size:clamp(2.7rem,5vw,5.5rem);font-weight:400}
.closing{background:var(--leaf);color:white;display:grid;grid-template-columns:1.05fr .95fr;gap:9vw}.closing em{color:#e2c98f}.closing-card{padding-top:3rem}.button.dark{margin-top:1.2rem;background:var(--ink);border-color:var(--ink);color:white}.contact{margin-top:2rem;font-size:.82rem}.contact a{color:white}
footer{padding:2.5rem 4vw;background:var(--ink);color:white;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;font-size:.72rem}footer p{text-align:center;color:#c9d0cb}footer>a{justify-self:end;text-decoration:none}.footer-logo{width:130px}.footer-logo img{width:100%;height:auto}
@media(max-width:900px){.topbar{grid-template-columns:1fr auto}.prepared{display:none}.firm-badge{display:block}.hero-copy{padding:14vw 7vw 10vw}.hero-note{display:none}.intro-grid,.idea,.why,.closing{grid-template-columns:1fr}.idea{min-height:0}.idea-visual{min-height:62vw}.advocacy .idea-copy{order:2}.advocacy .idea-visual{order:1}.idea-copy{padding:12vw 7vw}.why{gap:4rem}.image-break{height:65vh}.closing-card{padding-top:0}footer{grid-template-columns:1fr;gap:1.3rem;text-align:center}footer p,footer>a,.footer-logo{justify-self:center}}
@media(max-width:560px){body{font-size:16px}.topbar{height:78px;padding:0 5vw}.sv-logo{width:155px}.top-cta{font-size:.52rem}.hero{min-height:calc(100svh - 78px)}h1{font-size:clamp(3.7rem,18vw,5.5rem)}h2{font-size:clamp(2.8rem,13vw,4.2rem)}.hero-overlay{background:linear-gradient(90deg,rgba(8,17,11,.85),rgba(8,17,11,.3)),linear-gradient(0deg,rgba(8,17,11,.65),transparent)}.idea-visual{min-height:78vw}.caption{font-size:.52rem}.section{padding:18vw 7vw}.run-of-show div{grid-template-columns:1fr;gap:.25rem}.image-break{min-height:480px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
