/* Green editorial direction, approved September 2026. Shared across all pages. */
:root,:root[data-theme="dark"]{
  color-scheme:light;
  --day:#f7f8f0;--day-2:#eef1e7;--day-card:#fcfcf7;
  --day-line:#d4dbcd;--day-line-2:#b8c5b6;
  --day-txt:#203c31;--day-txt-2:#536258;--day-txt-3:#627165;
  --night:#f0f3e9;--night-2:#e5ecdd;--night-card:#f7f8f0;
  --night-line:#ced8c7;--night-line-2:#b8c5b6;
  --night-txt:#203c31;--night-txt-2:#536258;--night-txt-3:#627165;
  --green:#3f6950;--green-2:#315c43;--green-deep:#294b37;--on-green:#fff;
  --font-display:Georgia,"Times New Roman",serif;
  --r-sm:3px;--r-md:4px;--r-lg:6px;--r-xl:6px;--wrap:1280px;
}
body{font-size:16px}
h1,h2,h3,h4{font-weight:400;letter-spacing:-.045em;line-height:1.08}
.night::before,.day-band::before{display:none}
.grad,.night .grad,.hero h1 .grad{background:none;color:inherit;-webkit-text-fill-color:currentColor}
.btn{border-radius:3px;font-weight:500;box-shadow:none;min-height:46px}
.btn-primary{background:var(--green);color:#fff;box-shadow:none}
.btn-primary:hover{background:var(--green-deep);box-shadow:none;transform:none}
.btn-ghost,.night .btn-ghost{border-color:var(--day-line-2);color:var(--day-txt);background:transparent}
.hdr{padding:0;background:var(--day);border-bottom:1px solid var(--day-line)}
.bar{padding:20px 0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;gap:24px}
.logo{font-family:var(--font-display);font-size:31px!important;font-weight:400;letter-spacing:-.055em}
.logo-mark,.foot .logo .m{display:none}
.nav-links a{font-size:14px;border-radius:2px;padding:10px 12px}
.nav-right .btn{padding:14px 22px;font-size:14px}
.nav-right{margin-left:auto}
.hdr.scrolled .bar{box-shadow:none}
.mmenu{background:var(--day-card);color:var(--day-txt);border-radius:0}
.burger{border-radius:3px}
.editorial-hero{overflow:hidden}
.editorial-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;min-height:570px;gap:12px}
.editorial-hero-copy{padding:62px 0;position:relative;z-index:2}
.editorial-kicker{display:block;font:11px/1.6 var(--font-text);letter-spacing:.13em;text-transform:uppercase;color:var(--day-txt-2)}
.editorial-hero h1{font-size:clamp(44px,4.55vw,66px);margin:26px -60px 22px 0;position:relative;max-width:680px;text-wrap:initial}
.editorial-intro{font-size:20px;max-width:370px;line-height:1.5;margin-bottom:30px}
.editorial-hero .btn{gap:30px}
.editorial-caption{font-size:10px;letter-spacing:.12em;line-height:2;text-transform:uppercase;color:var(--day-txt-2);margin-top:44px}
.editorial-hero-image{margin:0 -60px 0 0;align-self:stretch;position:relative;min-width:0}
.editorial-hero-image img{width:100%;height:100%;object-fit:cover;object-position:57% center}
.editorial-hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f7f8f0 0%,rgba(247,248,240,.6) 10%,transparent 30%);pointer-events:none}
.assistant-band{background:#dfe9d6;padding:48px 0}
.assistant-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.assistant-band h2{font-size:clamp(38px,4.1vw,57px);margin:16px 0 18px}
.assistant-band p{font-size:16px;line-height:1.6}
.text-link{display:inline-flex;gap:22px;align-items:center;font-size:14px;line-height:1.5;border-bottom:1px solid #8b9e89;padding:7px 0;white-space:nowrap}
.text-link:hover{color:#203c31;border-color:#203c31}
.assistant-band .text-link{margin-top:20px}
.editorial-dialog{display:grid;gap:16px}
.dialog-line{display:flex;gap:15px;align-items:flex-start;background:#f7f8f0;border-radius:18px 18px 18px 2px;padding:22px 24px;margin-right:52px}
.dialog-avatar{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:#e4eadd;font-size:12px}
.dialog-line p{font-size:14px}
.dialog-answer{margin:0 0 0 48px;background:#cfdcc4;border-radius:18px 18px 2px 18px}
.dialog-answer .dialog-avatar{background:#e9efdf}
.dialog-note{font-size:10px;letter-spacing:.04em;color:#52634e;text-align:right;padding-right:3px}
.sec{padding:80px 0}.sec-tight{padding:58px 0}
.editorial-section-head{display:flex;align-items:center;gap:36px;margin-bottom:38px}
.editorial-section-head h2{font-size:clamp(36px,3.9vw,54px);flex:1}
.editorial-section-head p{font-size:13px;line-height:1.7;color:var(--day-txt-2)}
.editorial-section-head .text-link{margin-left:22px}
.editorial-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:45px}
.editorial-service{display:flex;align-items:baseline;gap:16px;padding:25px 0;border-bottom:1px solid var(--day-line);min-width:0}
.service-index{font-size:11px;color:#627165;flex:none}
.editorial-service h3{font-size:27px;letter-spacing:-.035em;margin-bottom:9px}
.editorial-service p{font-size:13px;line-height:1.65;color:var(--day-txt-2)}
.service-arrow{margin-left:auto;font-size:20px;transition:transform .2s}
.editorial-service:hover .service-arrow{transform:translate(3px,-3px)}
.editorial-service:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.editorial-projects{padding-top:20px}
.cases{grid-template-columns:1.25fr 1fr;gap:44px 28px;align-items:start}
.case{background:none;border:0;border-radius:0;box-shadow:none;color:var(--day-txt)}
.case:hover{transform:none}
.case:nth-child(even){margin-top:60px}
.case-top{height:auto;aspect-ratio:1.6;border:1px solid var(--day-line);border-radius:3px;background:#e5ecdd}
.case-top::after{display:none}
.case-shot{object-position:top center}
.case-tag{background:var(--day);color:var(--day-txt);border:1px solid var(--day-line);border-radius:2px;backdrop-filter:none;font-size:10px}
.case-b{padding:18px 0 0;position:relative}
.case-b h3{font-size:30px;font-weight:400;margin:7px 0}
.case-b p{max-width:56ch;font-size:14px;line-height:1.7}
.case-b .label{font-family:var(--font-text);font-size:10px;letter-spacing:.07em}
.case-b .dom{font-family:var(--font-text);font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--green)}
.case-metric{position:static;align-self:flex-start;display:inline-block;background:#dfe9d6;color:#294b37;border:0;box-shadow:none;border-radius:2px;font-size:11px;padding:5px 9px;margin:0 0 12px}
.case-metric{font-family:var(--font-text);font-weight:500;letter-spacing:0}
.case-badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}
.case-badges .case-tag,.case-badges .case-metric{position:static;max-width:100%;margin:0;align-self:auto}
.head{text-align:left;max-width:none;margin-bottom:35px}
.head h2{font-size:clamp(34px,4vw,52px);font-weight:400}
.head .lead{max-width:65ch;font-size:16px}
.eyebrow{font-family:var(--font-text);font-size:10px;letter-spacing:.13em;color:var(--green)}
.bundle{background:#e8eddf;border-radius:4px;border:0;box-shadow:none}
.bundle h3{font-size:36px;font-weight:400}
.bundle-cta{background:transparent;border-left:1px solid var(--day-line-2);border-radius:0}
.bundle-cta strong{font-family:var(--font-text);font-weight:500}
.step,.why-card{background:transparent;border:0;border-top:1px solid var(--day-line-2);border-radius:0;padding:25px 0}
.step h3,.why-card h3{font-size:26px;font-weight:400}
.step .n{background:none;color:var(--green);font-family:var(--font-display);font-size:30px;box-shadow:none;padding:0;width:auto;height:auto;justify-content:flex-start}
.faq{max-width:none;gap:0}
.faq details{border:0;border-top:1px solid var(--day-line);border-radius:0;background:transparent;padding:24px 0}
.faq summary{font-family:var(--font-text);font-size:17px;font-weight:500}
.faq p{max-width:80ch}
.cta-box{background:#dfe9d6;border:0;border-radius:4px;gap:65px;padding:48px}
.cta-box h2{font-size:clamp(36px,4vw,52px);font-weight:400}
.pill{background:transparent;border:0;padding:0;color:var(--green);font-family:var(--font-text);font-size:11px;letter-spacing:.06em}
.pulse{background:var(--green);box-shadow:none;animation:none}
.form input,.form select,.form textarea{background:#f9faf4;border:1px solid #b2c1aa;border-radius:3px;color:#203c31}
.form option{background:#f9faf4;color:#203c31}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--green);outline-offset:2px}
.form-msg.err{color:#a02525}
.foot{background:var(--day);padding-top:45px}
.foot h4{font-family:var(--font-text);font-weight:600}
.foot-bot{font-family:var(--font-text);text-transform:none;letter-spacing:0;font-size:12px}
.privacy-banner{border-color:#b8c5b6;border-radius:6px;background:#fcfcf7;color:#203c31;box-shadow:0 6px 24px #203c3115}
.privacy-actions button{border-color:#75856e;color:#203c31;border-radius:3px;background:transparent}
.privacy-actions button:hover{background:#e7eddf}
.svc-hero h1{font-weight:400}.svc-card,.format,.work,.hub-note{border-radius:4px;box-shadow:none}
.svc-card::after{display:none}.svc-card:hover{box-shadow:none}
.format.accent{background:#e8eddf;border-color:#b8c5b6}
#sla-root{--sla-accent:#3f6950;--sla-panel:#f7f8f0;--sla-text:#203c31}
#sla-root .sla-fab{background:#3f6950;color:#fff;box-shadow:0 4px 16px #203c3126}
#sla-root .sla-panel{border:1px solid #b8c5b6;box-shadow:0 12px 45px #203c3126}
#sla-root .sla-head{background:#e7eddf;border-color:#ced8c7}
#sla-root .sla-status,#sla-root .sla-powered{color:#536258}
#sla-root .sla-avatar,#sla-root .sla-send,#sla-root .sla-user{color:#fff}
#sla-root .sla-bot{background:#e7eddf;border-color:#d4dbcd}
#sla-root .sla-input{background:#fff;border-color:#b8c5b6;color:#203c31}
#sla-root .sla-input::placeholder{color:#627165}
#sla-root .sla-foot,#sla-root .sla-legal{border-color:#ced8c7}
#sla-root .sla-typing span{background:#536258}
@media(min-width:981px){.home .hdr .wrap{max-width:1280px}}
@media(max-width:1100px){
  .editorial-hero-grid{min-height:510px}.editorial-hero h1{font-size:54px;margin-right:-90px}
  .assistant-grid{gap:35px}.editorial-services{column-gap:25px}.editorial-service h3{font-size:25px}
  .editorial-section-head{gap:20px}.editorial-section-head .text-link{margin-left:0}
}
@media(max-width:760px){
  .bar{padding:15px 0}.logo{font-size:27px!important}.nav-right .btn{display:none}
  .editorial-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}
  .editorial-hero-copy{padding:36px 0 24px}.editorial-hero h1{font-size:clamp(40px,7.5vw,58px);margin:18px 0;max-width:620px}
  .editorial-intro{font-size:18px;max-width:400px;margin-bottom:24px}.editorial-caption{margin-top:26px;font-size:9px}
  .editorial-hero-image{margin:0 calc(-1 * var(--pad));height:auto;aspect-ratio:1.65}
  .editorial-hero-image img{object-position:center}.editorial-hero-image::after{display:none}
  .assistant-band{padding:38px 0}.assistant-grid{grid-template-columns:1fr;gap:30px}
  .assistant-band h2{font-size:43px}.assistant-band p{font-size:15px}.editorial-dialog{max-width:580px}
  .dialog-line{padding:18px;margin-right:30px}.dialog-answer{margin:0 0 0 30px}.dialog-line p{font-size:13px}
  .sec{padding:52px 0}.sec-tight{padding:36px 0}.editorial-projects{padding-top:10px}
  .editorial-section-head{flex-wrap:wrap;gap:16px;margin-bottom:20px}.editorial-section-head h2{flex-basis:100%;font-size:39px}
  .editorial-section-head p{flex:1}.editorial-section-head .text-link{font-size:12px;gap:12px}
  .editorial-services{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.editorial-service{gap:10px;padding:20px 0}
  .editorial-service h3{font-size:25px}.editorial-service p{font-size:12px}.service-arrow{display:none}
  .cases{gap:30px 20px;grid-template-columns:1fr 1fr}.case:nth-child(even){margin-top:30px}
  .case-b h3{font-size:26px}.case-b p{font-size:13px}.case-tag{max-width:calc(100% - 20px);left:10px;top:10px}
  .cta-box{padding:30px 24px;gap:30px}.bundle-cta{border-left:0;border-top:1px solid var(--day-line-2)}
}
@media(max-width:480px){
  :root{--pad:20px}.editorial-hero h1{font-size:43px;letter-spacing:-.055em}
  .editorial-kicker{font-size:9px}.editorial-services{grid-template-columns:1fr}
  .editorial-service{gap:18px}.editorial-service h3{font-size:28px}.editorial-service p{font-size:13px}
  .service-arrow{display:block}.cases{grid-template-columns:1fr}.case:nth-child(even){margin-top:0}
  .editorial-section-head h2{font-size:36px}.editorial-section-head p{font-size:12px}
  .assistant-band h2{font-size:40px}.dialog-line{gap:10px;margin-right:15px}.dialog-answer{margin:0 0 0 15px}
  .dialog-note{font-size:9px}.desktop-break{display:none}.cta-box{padding:26px 20px}
  .foot-grid{gap:24px}.foot-bot{padding-bottom:55px}
}
