/* OWNSTANCE: charcoal and sculptural lime */
:root{--paper:#121411;--ink:#f3f1e9;--accent:#d9a18d;--muted:#b5baae;--line:#ffffff26;color-scheme:dark}
body{background:var(--paper);color:var(--ink)}
header{background:#121411f5;border-color:var(--line)}
header a.logo{background:#f3f1e9;padding:9px 12px;height:70px;border-radius:2px}
.foot a.logo{background:#f3f1e9}
header nav{background:var(--paper)}header nav>a:not(.pill){border-color:var(--line)!important}
.language-control select{color:var(--ink);border-color:#ffffff55}.language-control option{background:var(--paper);color:var(--ink)}
.menu-toggle{color:var(--ink);border-color:#ffffff55}
.pill{border-color:#ffffff60;color:var(--ink);transition:background .18s,color .18s}
.pill.dark,.pill.lime{background:var(--accent);border-color:var(--accent);color:#121411}
.pill:hover{background:#ffffff12}.pill.dark:hover,.pill.lime:hover{background:#f4d5c6;border-color:#f4d5c6}
.dot{background:var(--accent)}.eyebrow{color:var(--accent)}
.ticker{color:var(--accent);border-color:var(--line)}
.intro,.home-next,.apply,.service,.service:last-child,details,details:last-child,.tags span{border-color:var(--line)}
.process,.founder-quote,.foot,.legal{background:#0c0e0b;color:var(--ink)}
.process .subpage-title{color:var(--ink)}
.fit{background:#1a1e16;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fit li{border-color:var(--line)}.fit li:before{color:var(--accent)}
.founder-mark{color:#121411}.founder-mark:before{border-color:#12141150}
form{background:#1a1d17;border-color:var(--line)}input,select,textarea{background:#121411;color:var(--ink);border-color:#ffffff40}input::placeholder,textarea::placeholder{color:#a0a697}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);border-color:var(--accent)}
.legal{border-color:var(--line)}
.ribbon-art{margin:0;position:relative;min-width:0;align-self:stretch;display:flex;align-items:center;overflow:hidden}
.ribbon-art img{display:block;width:100%;height:auto;object-fit:contain;mask-image:linear-gradient(90deg,transparent 0%,black 7%,black 93%,transparent 100%);}
.compact-home .hero{grid-template-columns:1.05fr 1.15fr;gap:3%;min-height:660px}.hero h1 em{color:var(--accent)}
@media(max-width:900px){.compact-home .hero{grid-template-columns:1fr;gap:25px;min-height:0}.ribbon-art{max-width:720px;width:100%;margin:0 auto}header a.logo{height:62px}}
@media(max-width:550px){header a.logo{height:56px;padding:7px 9px}.ribbon-art{margin-top:5px}.hero h1{font-size:clamp(48px,12vw,61px)}}
@media(prefers-reduced-motion:reduce){.pill{transition:none}}

/* Vector arrows render consistently on every device. */
.arrow-icon{display:inline-block;width:1.1em;height:1.1em;flex:none;vertical-align:-.15em;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.ticker>span{display:inline-flex;align-items:center;gap:10px}.ticker .arrow-icon{width:15px;height:15px}
.fit li:before{display:inline-block;width:16px;height:16px;vertical-align:-2px;background:var(--accent);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M4 16 16 4M4 4h12v12' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* Seamless logo and hero integration. */
.brand-filters{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
header a.logo,.foot a.logo{background:transparent;padding:0;border-radius:0}
header a.logo img,.foot a.logo img{filter:url(#logo-on-dark)}
.ribbon-art img{-webkit-mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent),linear-gradient(180deg,transparent,black 18%,black 80%,transparent);mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent),linear-gradient(180deg,transparent,black 18%,black 80%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}

/* The ribbon flows across the full hero, without a separate image card. */
.compact-home .hero{position:relative;isolation:isolate;display:flex;min-height:700px;overflow:hidden}
.hero>div:first-child{position:relative;z-index:2;width:49%;max-width:580px}
.hero .ribbon-art{position:absolute;inset:0;z-index:0;margin:0;max-width:none;width:100%;height:100%;display:block;pointer-events:none}
.hero .ribbon-art img{width:100%;height:100%;object-fit:cover;object-position:center 54%;mask:none;-webkit-mask:none}
.hero .ribbon-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#121411f5 0%,#121411e8 28%,#12141199 43%,transparent 68%),linear-gradient(180deg,#121411 0%,transparent 23%,transparent 75%,#121411 100%)}
@media(max-width:900px){.compact-home .hero{min-height:850px;align-items:flex-start;padding-bottom:320px}.hero>div:first-child{width:100%;max-width:600px}.hero .ribbon-art img{position:absolute;width:150%;height:auto;max-width:none;left:-25%;bottom:0;object-fit:contain}.hero .ribbon-art:after{background:linear-gradient(180deg,#121411 0%,#121411ed 40%,#121411a6 54%,transparent 72%,#121411 100%)}}
@media(max-width:550px){.compact-home .hero{min-height:880px;padding-bottom:280px}.hero .ribbon-art img{width:190%;left:-45%;bottom:15px}.hero .ribbon-art:after{background:linear-gradient(180deg,#121411 0%,#121411f5 48%,#12141199 65%,transparent 80%,#121411 100%)}}

/* Charcoal leads; lime is reserved for small, deliberate accents. */
.hero .ribbon-art img{opacity:1;filter:none}
.hero h1 em{color:var(--ink)}
.eyebrow,.ticker,.process .eyebrow,.founder-quote .eyebrow{color:#c4c9bc}
.ticker .arrow-icon{color:#b4aaa3}
.pill.dark{background:var(--ink);border-color:var(--ink);color:#121411}
.pill.dark:hover{background:#ffffff;border-color:#ffffff}
.hero .actions>.pill.dark:first-child,form button.pill.dark{background:var(--accent);border-color:var(--accent);color:#121411}
.hero .actions>.pill.dark:first-child:hover,form button.pill.dark:hover{background:#f4d5c6;border-color:#f4d5c6}
header nav>a.pill.dark{background:transparent;color:var(--ink);border-color:#ffffff60}
header nav>a.pill.dark:hover{background:#ffffff12}
.founder-mark{background:#1a1e16;color:var(--ink);border:1px solid var(--line)}
.founder-mark:before{border-color:#ffffff26}.founder-mark small{color:var(--muted)}
.step span{color:#c4c9bc}

/* Rose gold: reflected light and restrained metallic accents. */
:root{--accent:#d9a18d;--metal:linear-gradient(115deg,#b67864 0%,#dfad98 25%,#f8dfd1 43%,#cc947e 60%,#e9bcaa 78%,#ba806a 100%)}
.hero .actions>.pill.dark:first-child,form button.pill.dark,.pill.lime{background:var(--metal);border-color:#d9a18d;color:#171310;box-shadow:inset 0 1px 0 #fff5,0 2px 14px #d9a18d12;background-size:140% 100%;transition:background-position .4s,box-shadow .4s}
.hero .actions>.pill.dark:first-child:hover,form button.pill.dark:hover,.pill.lime:hover{background:var(--metal);background-size:140% 100%;background-position:100% 50%;border-color:#f4d5c6;box-shadow:inset 0 1px 0 #fff8,0 3px 18px #d9a18d25}
.dot,.fit li:before{background:var(--metal)}
.hero .ribbon-art img{opacity:1;filter:none}
@media(prefers-reduced-motion:reduce){.hero .actions>.pill.dark:first-child,form button.pill.dark,.pill.lime{transition:none}}

/* Sarah's founder portrait replaces the initial placeholder. */
.founder-portrait{margin:0;width:100%;max-width:440px;justify-self:end;overflow:hidden;border-radius:2px;background:#171613}
.founder-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 28%}
@media(max-width:900px){.founder-portrait{justify-self:start;max-width:440px}}
@media(max-width:550px){.founder-portrait{max-width:100%}}
