:root{color-scheme:light dark;--paper:#f5eee9;--paper-2:#fffaf7;--ink:#1e1d20;--muted:#6d6767;--wine:#7d263d;--rose:#d7a2a3;--line:#cfc3bc;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:"Avenir Next",Avenir,"Century Gothic",sans-serif}:root[data-theme=dark]{--paper:#171719;--paper-2:#222125;--ink:#f6efe9;--muted:#bbb0ad;--wine:#e5a2ad;--rose:#8d4d5a;--line:#484248}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{color:var(--ink);background:var(--paper);font:400 1rem/1.65 var(--sans);margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button{color:inherit}.skip-link{z-index:100;background:var(--ink);color:var(--paper);padding:.7rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--wine);outline-offset:4px}.site-header{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;min-height:98px;padding:1.2rem clamp(1.2rem,4vw,4.5rem);display:grid}.wordmark{font:600 clamp(1.15rem,2vw,1.45rem)/.82 var(--serif);letter-spacing:.01em;text-transform:uppercase;text-decoration:none}.wordmark span{display:block}.site-nav ul{justify-content:center;gap:clamp(.8rem,2.2vw,2rem);margin:0;padding:0;list-style:none;display:flex}.site-nav a{letter-spacing:.11em;text-transform:uppercase;font-size:.76rem;text-decoration:none;position:relative}.site-nav a:after{content:"";border-bottom:1px solid var(--wine);transition:right .2s;position:absolute;bottom:-.5rem;left:0;right:100%}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{right:0}.theme-switcher{border:1px solid var(--line);border-radius:99px;gap:.15rem;margin:0;padding:.2rem;display:flex}.theme-switcher legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.theme-switcher button{text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:0;border-radius:99px;padding:.35rem .55rem;font-size:.66rem}.theme-switcher button[aria-pressed=true]{color:var(--paper-2);background:var(--wine)}.menu-button{background:0 0;border:0;display:none}.hero{grid-template-rows:1fr auto;grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);gap:2rem 5vw;padding:clamp(2rem,4vw,4rem) clamp(1.2rem,7vw,8rem) 2rem;display:grid;overflow:hidden}.hero-copy{z-index:1;align-self:start;position:relative}.eyebrow{color:var(--wine);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.72rem;font-weight:700;line-height:1.4}.hero h1,.page-intro h1{font:400 clamp(4rem,10vw,9.5rem)/.78 var(--serif);letter-spacing:-.07em;margin:0}.hero h1 em{color:var(--wine);font-weight:400}.lede{max-width:670px;font:400 clamp(1.12rem,2vw,1.42rem)/1.55 var(--serif);margin:2rem 0 0}.button-row{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2.2rem;display:flex}.button{border:1px solid var(--wine);background:var(--wine);min-height:48px;color:var(--paper-2);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;padding:.75rem 1.2rem;font-size:.77rem;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{filter:brightness(1.12)}.text-link{text-underline-offset:.3em;text-decoration-thickness:1px}.hero-art{background:linear-gradient(145deg,var(--rose),var(--wine));clip-path:polygon(12% 0,100% 6%,92% 100%,0 92%);align-self:stretch;min-height:470px;position:relative}.hero-art:before{content:"";clip-path:inherit;background:radial-gradient(circle at 65% 25%,#ffffff3d,#0000 28%),repeating-linear-gradient(115deg,#0000 0 28px,#ffffff0b 29px 30px);position:absolute;inset:1px}.hero-art p{color:#fffaf7;text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:.7rem;position:absolute;inset:auto 12% 13%}.hero-art p span{font:italic 400 2.3rem/1 var(--serif);letter-spacing:0;text-transform:none;margin-bottom:.25rem;display:block}.frame-mark{aspect-ratio:1;border:1px solid #ffffff85;border-radius:50%;width:38%;position:absolute}.frame-mark-one{top:12%;right:-9%}.frame-mark-two{bottom:17%;left:-12%}.hero-note{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;grid-column:1/-1;align-items:center;gap:1rem;margin:0;font-size:.7rem;display:flex}.section-pad{padding:clamp(4rem,9vw,8rem) clamp(1.2rem,7vw,8rem)}.intro-grid{border-top:1px solid var(--line);grid-template-columns:.75fr 1.25fr;gap:3rem;display:grid}.intro-grid h2,.closing-callout h2{font:400 clamp(2.5rem,6vw,5.7rem)/.9 var(--serif);letter-spacing:-.04em;margin:0}.statement{max-width:800px;font:400 clamp(1.5rem,3vw,2.45rem)/1.32 var(--serif);margin:0}.feature-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;padding-top:0;display:grid}.feature{background:var(--paper-2);flex-direction:column;min-height:390px;padding:2rem;text-decoration:none;transition:transform .25s,background .25s;display:flex}.feature:hover{background:color-mix(in srgb,var(--paper-2) 88%,var(--rose));transform:translateY(-7px)}.feature-number{color:var(--wine);letter-spacing:.15em;font-size:.72rem}.feature h2{font:400 clamp(2rem,4vw,3.2rem)/1 var(--serif);margin:auto 0 1rem}.feature p{max-width:27ch;margin:0}.feature-arrow{align-self:flex-end;margin-top:2rem;font-size:1.6rem}.closing-callout{color:#fffaf7;background:#512033}.closing-callout .eyebrow{color:#e8b8bc}.closing-callout p:not(.eyebrow){max-width:580px;font:1.2rem/1.6 var(--serif)}.button-light{color:#512033;background:#fffaf7;border-color:#fffaf7}.page-intro{border-bottom:1px solid var(--line);flex-direction:column;padding:clamp(2.5rem,4vw,4rem) clamp(1.2rem,7vw,8rem) clamp(2rem,3vw,3rem);display:flex}.page-intro h1{max-width:1050px;font-size:clamp(3.7rem,9vw,8rem)}.page-intro .lede{max-width:760px}.prose-layout{grid-template-columns:minmax(250px,.75fr) minmax(0,1fr);gap:clamp(3rem,9vw,9rem);display:grid}.pull-quote{border:1px solid var(--line);padding:2rem;position:relative}.pull-quote:before{content:"“";color:var(--rose);font:8rem/1 var(--serif);position:absolute;top:-.45em;left:.2em}.pull-quote p{font:italic 2rem/1.35 var(--serif);margin:4rem 0 0;position:relative}.prose h2,.contact-aside h2{font:400 2.5rem/1 var(--serif);margin:0 0 1.5rem}.prose p{max-width:650px;font-size:1.08rem}.content-note{border-left:3px solid var(--wine);background:var(--paper-2);margin-top:3rem;padding:1.2rem 1.5rem}.content-note p{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}.split-panels{grid-template-columns:1fr 1fr;padding-top:0;display:grid}.split-panels article{border:1px solid var(--line);min-height:520px;padding:3rem}.split-panels article+article{border-left:0}.large-number{color:var(--rose);font:6rem/1 var(--serif);display:block}.split-panels h2,.media-placeholder h2{font:400 clamp(2.5rem,5vw,4.5rem)/1 var(--serif);margin:1rem 0}.split-panels article>p:last-child{max-width:42ch;margin-top:2rem}.media-placeholder{background:var(--paper-2);grid-template-columns:.75fr 1.25fr;gap:4rem;display:grid}.contact-sheet{grid-template-columns:repeat(3,1fr);gap:1rem;min-height:340px;display:grid}.contact-sheet span{background:linear-gradient(155deg,var(--rose),var(--wine))}.contact-sheet span:nth-child(2){filter:saturate(.65);transform:translateY(2rem)}.contact-sheet span:nth-child(3){filter:brightness(.75)}.principles{grid-template-columns:repeat(3,1fr);gap:3rem;display:grid}.principles article{border-top:1px solid var(--wine);padding-top:1.5rem}.principles span{color:var(--muted);font-size:.72rem}.principles h2{min-height:2em;font:400 2.25rem/1 var(--serif)}.quote-band{color:#fffaf7;background:var(--wine);text-align:center;padding:8rem 1.2rem}.quote-band blockquote{max-width:900px;font:italic 400 clamp(2.5rem,6vw,5.5rem)/1 var(--serif);margin:0 auto}.service-mark{border:1px solid var(--line);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;min-height:430px;display:flex}.service-mark span{font:italic 400 clamp(2.3rem,5vw,4rem)/1.08 var(--serif)}.service-mark span:nth-child(2){color:var(--wine)}.contact-layout{grid-template-columns:.7fr 1.3fr;gap:clamp(3rem,9vw,9rem);padding-top:clamp(2rem,3vw,3rem);display:grid}.contact-aside dl{margin-top:3rem}.contact-aside dl div{border-top:1px solid var(--line);padding:1rem 0}.contact-aside dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem}.contact-aside dd{margin:.2rem 0 0}.contact-form{gap:1.25rem;display:grid}.field-row{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.contact-form label{letter-spacing:.08em;text-transform:uppercase;gap:.45rem;font-size:.74rem;font-weight:700;display:grid}.contact-form label span{color:var(--muted);text-transform:none;font-weight:400}.contact-form input,.contact-form select,.contact-form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:0 0;border-radius:0;padding:.85rem 0}.contact-form textarea{border:1px solid var(--line);resize:vertical;padding:.8rem}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.turnstile-placeholder{border:1px dashed var(--line);background:var(--paper-2);align-items:center;gap:1rem;min-height:72px;padding:1rem;display:flex}.turnstile-placeholder>span{color:var(--wine);font-size:1.5rem}.turnstile-placeholder strong,.turnstile-placeholder small{display:block}.turnstile-placeholder small,.form-note{color:var(--muted);font-size:.78rem}.form-note{margin:0}.contact-form .button{justify-self:start}.form-status{min-height:1.5em;color:var(--wine);margin:0;font-weight:700}.site-footer{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:.5rem 2rem;padding:3rem clamp(1.2rem,4vw,4.5rem);font-size:.82rem;display:grid}.site-footer p{margin:0}.site-footer span{font-family:var(--serif);font-weight:700}.fine-print{color:var(--muted);grid-column:1/-1;font-size:.7rem}@media (width<=900px){.site-header{grid-template-columns:auto auto 1fr}.menu-button{cursor:pointer;justify-self:end;align-items:center;gap:.6rem;display:flex}.menu-button i,.menu-button i:after{content:"";border-top:1px solid;width:18px;display:block}.menu-button i:after{margin-top:5px}.site-nav{grid-column:1/-1;display:none}.site-nav[data-open]{display:block}.site-nav ul{flex-direction:column;align-items:flex-start;padding:1rem 0}.theme-switcher{justify-self:end}.hero{grid-template-columns:1fr}.hero-art{min-height:420px}.hero-note{grid-column:auto}.intro-grid,.prose-layout,.media-placeholder,.contact-layout,.feature-grid,.principles{grid-template-columns:1fr}.feature{min-height:290px}.split-panels{grid-template-columns:1fr}.split-panels article+article{border-left:1px solid var(--line);border-top:0}.contact-sheet{min-height:260px}}@media (width<=580px){.site-header{gap:.8rem;padding:1rem 1.2rem}.theme-switcher button{padding:.32rem .42rem;font-size:.58rem}.menu-button span{width:1px;height:1px;position:absolute;overflow:hidden}.hero{padding-top:2rem}.hero h1{font-size:clamp(3.5rem,19vw,5.5rem)}.hero-art{min-height:340px}.field-row{grid-template-columns:1fr}.principles{gap:1rem}.site-footer{grid-template-columns:1fr}.fine-print{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.construction-banner{border-bottom:1px solid var(--line);color:var(--wine);background:color-mix(in srgb,var(--paper) 85%,var(--rose));letter-spacing:.08em;text-align:center;justify-content:center;align-items:center;gap:.65rem;margin:0;padding:.35rem 1rem;font-size:.72rem;font-weight:500;line-height:1.5;display:flex}.construction-banner span[aria-hidden]{font-size:.9rem;line-height:1}.form-status[data-state=error]{color:#a32032}.form-status[data-state=success]{color:#24673b}:root[data-theme=dark] .form-status[data-state=error]{color:#ffa6ae}:root[data-theme=dark] .form-status[data-state=success]{color:#96d6aa}.button:disabled{opacity:.6;cursor:not-allowed}.contact-form label{align-content:start}.contact-form label>span{display:inline}@media (prefers-reduced-motion:no-preference) and (forced-colors:none){@supports (background-clip:text){.construction-text{background-image:linear-gradient(110deg, var(--wine) 40%, var(--ink) 50%, var(--wine) 60%);color:#0000;background-position:100% 0;background-size:300% 100%;background-clip:text;animation:3s ease-in-out infinite construction-shimmer}}}@keyframes construction-shimmer{0%,70%{background-position:100% 0}to{background-position:0 0}}
