@font-face{font-family:Satoshi;src:url('/fonts/Satoshi-Variable.woff2') format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('/fonts/CormorantGaramond-Italic.ttf') format('truetype');font-weight:500;font-style:italic;font-display:swap}
html[data-fonts=brand]{--font-1:Satoshi,sans-serif;--font-2:Satoshi,sans-serif}
html[data-palette=brand]{--color-1:#273B31;--color-2:#F2EBDD;--color-3:#C87B5B;--color-4:#e5e2d5;--color-5:#d0d4c3;--color-6:#4e5a4e;--color-7:#1b3027}
html[data-fonts=brand] .hero__approved em{font-family:'Cormorant Garamond',serif;font-weight:500}
html[data-palette=brand] .m-btn{background:var(--color-1);color:var(--color-2)}
html[data-palette=brand] .nav .m-btn,html[data-palette=brand] #hero .m-btn{background:var(--color-2);color:var(--color-1)}
html[data-palette=brand] #contact{background:var(--color-1)}
html[data-palette=brand] .m-btn:after{background:#46604e}
[hidden]{display:none!important}







.hero__approved{font-family:var(--font-1);font-size:clamp(32px,3.3vw,54px);font-weight:600;letter-spacing:-.045em;line-height:1.04;max-width:760px;margin:0}
.hero__approved em{font-style:italic}
#hero .hero__intro{max-width:46rem;gap:16px}
#hero .hero__lead{max-width:40rem;font-size:clamp(17px,1.4vw,21px);line-height:1.45}
.hero__actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.hero__actions .m-btn{font-size:16px}
#hero .hero__title{margin-top:32px}
section{position:relative}
.editorial-marker{position:absolute;right:var(--space-1);top:18px;font:600 11px/1.4 var(--font-2);text-transform:uppercase;letter-spacing:.05em;color:var(--color-6);border:1px solid currentColor;border-radius:999px;padding:5px 9px;z-index:4}
#work .editorial-marker,#capabilities .editorial-marker{color:var(--color-5)}
#work .case{text-decoration:none}
#work .case__tag{font-size:11px;max-width:90%;white-space:normal}
#work .case__line{font-size:clamp(14px,1.3vw,17px);line-height:1.45}
#work .case__text{gap:10px}
#work .case__text>.m-text-6{color:#fff;font-weight:600}
#again .again__head{gap:24px;align-items:start}
#again .again__head h2{font-size:clamp(38px,6vw,92px);line-height:.98;max-width:62rem}
#again .again__lead{font-size:clamp(16px,1.3vw,19px);line-height:1.5;max-width:42rem}
#again .partner__card{background:var(--color-2);color:var(--color-1)}
#again .partner__img{opacity:.1;filter:grayscale(1)}
#again .partner__card:after{background:linear-gradient(to top,var(--color-2) 40%,transparent)}
#again .partner__text{gap:12px;top:24px;bottom:24px;display:flex;flex-direction:column;overflow:hidden}
#again .partner__year{background:var(--color-1);color:var(--color-2);align-self:flex-start;font-size:11px}
#again .partner__name{font-size:clamp(24px,2.3vw,34px)}
#again .partner__line{color:var(--color-1);font-size:clamp(14px,1.2vw,17px);line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}
.review-open{font:600 14px/1.3 var(--font-2);border:0;border-bottom:1px solid currentColor;padding:0 0 4px;background:transparent;color:inherit;text-align:left;cursor:pointer;margin-top:auto;flex-shrink:0}
.review-image-note{font:11px/1.35 var(--font-2);margin:0;flex-shrink:0}
.review-dialog{background:var(--color-2);color:var(--color-1);max-width:760px;width:calc(100% - 32px);max-height:85svh;padding:clamp(24px,4vw,48px);border:0;border-radius:22px;overflow:auto}
.review-dialog::backdrop{background:#000a;backdrop-filter:blur(6px)}
.review-dialog>h2{margin:20px 0}.review-dialog>blockquote{margin:20px 0}.review-dialog details{margin-top:24px}.review-dialog details p{margin-top:16px}.review-dialog .review-close{float:right;cursor:pointer}.review-dialog p{margin-top:18px}
#capabilities .service__text{gap:14px}
#capabilities .service__line{line-height:1.5}
#capabilities .service__text>.m-link{align-self:flex-start;margin-top:10px}
.pricing-note{padding-top:32px;color:var(--color-5);max-width:45rem}
#method .method__head{margin-bottom:52px}
#method .step{opacity:1}
#studio .studio__head>p:first-child{grid-column:1/-1}
#studio .studio__lead{font-size:clamp(20px,1.7vw,25px);line-height:1.4}
#studio .studio__roles{gap:14px}
#studio .studio__roles>p{line-height:1.3}
.edgar-signature{width:220px;height:auto;background:#273b31;padding:12px;border-radius:8px}
.full-bio{margin-top:40px;max-width:900px}.full-bio summary{cursor:pointer}.full-bio p{margin-top:24px;line-height:1.5}
#studio .studio__collage:after{content:'Layout collage — only the portrait and signature are Edgar’s original assets';position:absolute;bottom:-28px;left:0;font:12px/1.4 var(--font-2);color:var(--color-6)}
#contact .contact__mail{font-size:clamp(20px,2.6vw,38px);overflow-wrap:anywhere;line-height:1.25}
#contact .contact__form{background:var(--color-4);color:var(--color-1)}
#contact .contact__form .m-text{color:var(--color-1);font-size:14px;line-height:1.5}
#contact .contact__title{font-size:min(12vw,calc((100vw - 2 * var(--space-1)) / (var(--len) * .5)))}
#contact .contact__info h3{font-size:clamp(32px,4vw,58px)}
#footer .footer__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
#footer .footer__col>p{line-height:1.5}



@media(max-width:899px){#hero{min-height:max(1000px,115svh)}#hero .hero__stage{top:calc(72% - var(--ap) / 2)}#hero .hero__intro{padding-top:110px;max-width:46rem}.hero__approved{font-size:clamp(31px,6vw,48px)}#hero .hero__title{margin-top:48px}#again .again__head{display:block}#again .again__head h2{margin-bottom:24px}#studio .studio__collage:after{position:relative;display:block;grid-column:span 2;bottom:auto}#footer .footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:639px){.hero__actions{gap:16px}#hero .hero__intro{gap:16px}#again .again__head h2{font-size:40px}#again .again__lead{font-size:16px}#again .partner__text{top:18px;bottom:18px;gap:9px}#again .partner__line{-webkit-line-clamp:4}#again .partner__name{font-size:25px}.editorial-marker{font-size:10px;padding:4px 7px;top:12px}#capabilities .service__text{gap:14px}#capabilities .service__line{font-size:17px}#footer .footer__grid{grid-template-columns:1fr}.hero__approved em{white-space:nowrap}#contact .contact__title{white-space:normal;font-size:clamp(38px,8vw,70px)}#contact .contact__title .m-dot{width:.15em;height:.15em}#studio .studio__roles{padding-top:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
.hero__stage:after{content:'Layout image · placeholder';position:absolute;bottom:10px;left:15%;padding:4px 8px;border-radius:999px;background:#273b31cc;color:#f2ebdd;font:11px/1.4 var(--font-2);white-space:nowrap;pointer-events:none}
.footer__aperture:after{content:'Layout placeholder';position:absolute;bottom:15%;left:15%;padding:4px 8px;border-radius:999px;background:#273b31cc;color:#f2ebdd;font:11px/1.4 var(--font-2);white-space:nowrap;pointer-events:none}
#studio .shot:has([data-placeholder])::after{content:'Layout placeholder';position:absolute;top:10px;left:10px;z-index:2;padding:5px 8px;border-radius:999px;background:#273b31dc;color:#f2ebdd;font:11px/1.3 var(--font-2);pointer-events:none}
.hero__stage:after,.footer__aperture:after{letter-spacing:0;text-transform:none}

/* Approved owner assets: retain Onda scene geometry and remove obsolete demo labels. */
.hero__stage:after,.footer__aperture:after,#studio .studio__collage:after{content:none}
/* The supplied signature has black strokes on transparency. */
.edgar-signature{background:var(--color-2)}
@media(max-width:899px){
 #hero{--ap:min(55vw,25svh);min-height:100svh;grid-template-rows:auto 1fr;row-gap:0;padding-bottom:0}
 #hero .hero__intro{padding-top:96px;gap:12px}
 #hero .hero__stage{position:absolute;left:calc(50% - var(--ap) / 2);top:calc(var(--intro-bottom,350px) + 24px);margin:0}
 #hero .hero__title{grid-row:2;margin-top:calc(var(--ap) + 48px);padding-bottom:12px;font-size:min(26.5vw,20svh);line-height:.85}
}
@media(max-width:639px) and (max-height:720px){
 #hero{--ap:min(43vw,23svh)}
 #hero .hero__intro{padding-top:84px;gap:10px}
 #hero .hero__lead{font-size:17px;line-height:1.35}
 #hero .hero__stage{top:calc(var(--intro-bottom,350px) + 20px)}
 #hero .hero__title{margin-top:calc(var(--ap) + 40px)}
}

/* Targeted readability layer: Selected Work cards only. */
#work .case__media::after{inset:0;background:linear-gradient(to bottom,rgba(15,29,23,.04) 0%,rgba(15,29,23,.16) 30%,rgba(15,29,23,.9) 58%,rgba(15,29,23,.98) 100%)}
#work .case__text{color:#F2EBDD;text-shadow:0 1px 3px #0008;isolation:isolate}
#work .case__text::before{content:'';position:absolute;inset:-28px -36px -36px;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(15,29,23,.92) 28px,rgba(15,29,23,.96))}
#work .case__text .case__line{color:#F2EBDD}
#work .case__tag{background:#273B31ed;color:#F2EBDD}
/* Extra breathing room under mobile copy; reserve matching room above Hello. */
@media(max-width:899px){#hero .hero__stage{top:calc(var(--intro-bottom,350px) + 44px)}#hero .hero__title{margin-top:calc(var(--ap) + 68px)}}
@media(max-width:639px) and (max-height:720px){#hero .hero__stage{top:calc(var(--intro-bottom,350px) + 40px)}#hero .hero__title{margin-top:calc(var(--ap) + 60px)}}
.contact__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact__form button:disabled{opacity:.65;cursor:wait}
.contact__status{max-width:32rem}
