/* NewellOI / Newell Starks shared design system — initial editorial build */
:root {
  --ink:#15272c; --ink-soft:#536269; --line:#cddbd9;
  --mist:#ecf3f0; --cream:#f5f4ee; --mint:#baf4db; --teal:#0d6358;
  --space:clamp(24px,5.5vw,86px); --max:1230px;
  --font:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --serif:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:var(--font);-webkit-font-smoothing:antialiased;line-height:1.6}
a{color:inherit}a:hover{text-decoration-thickness:2px}
button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #20aa94;outline-offset:4px}
::selection{background:#a9eac9;color:#0e292b}
.skip-link{position:absolute;left:18px;top:-100px;padding:12px 16px;background:var(--mint);color:#082625;z-index:1000}
.skip-link:focus{top:12px}
.container{max-width:var(--max);margin:0 auto;padding:0 var(--space)}
.site-header{position:relative;z-index:20}
.site-header .container{min-height:84px;display:flex;align-items:center;gap:22px;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;white-space:nowrap}
.brand-glyph{width:38px;height:38px;border:1.5px solid currentColor;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;letter-spacing:-.08em;font-weight:790;font-size:16px;line-height:1;position:relative}
.brand-glyph:after{content:"";width:5px;height:5px;background:var(--mint);border:1px solid currentColor;border-radius:50%;position:absolute;right:-3px;top:-3px}
.brand-name{font-size:20px;font-weight:730;letter-spacing:-.055em}
.site-nav{display:flex;align-items:center;gap:clamp(17px,2.5vw,35px);font-size:13px;font-weight:620}
.site-nav a{text-decoration:none;opacity:.81;transition:opacity .2s}
.site-nav a:hover{opacity:1}
.nav-cta{border:1px solid currentColor;border-radius:100px;padding:10px 16px;opacity:1!important}
.menu-toggle{display:none;border:1px solid currentColor;color:inherit;background:transparent;border-radius:9px;padding:8px;cursor:pointer}
.menu-toggle svg{display:block}
.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;font-size:11px;font-weight:750;letter-spacing:.17em;line-height:1.4}
.eyebrow:before{content:"";width:25px;height:1px;background:currentColor;opacity:.7}
.hero-copy h1{font-size:clamp(49px,5.9vw,96px);font-weight:590;line-height:1.035;letter-spacing:-.075em;margin:30px 0 25px;max-width:790px}
.lede{max-width:610px;font-size:clamp(16px,1.6vw,19px);line-height:1.72;letter-spacing:-.011em}
.btn-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:33px}
.btn{display:inline-flex;align-items:center;gap:16px;text-decoration:none;border-radius:100px;padding:15px 22px;font-size:13px;font-weight:750;line-height:1.2;transition:transform .2s,background .2s,border-color .2s;min-height:48px}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:17px;height:17px;flex:none}
.small-note{font-size:12px;letter-spacing:.01em;opacity:.64;margin-top:34px}
.section-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:38px}
.section-head h2{font-size:clamp(34px,4.4vw,59px);line-height:1.11;letter-spacing:-.057em;font-weight:590;margin:15px 0 0}
.section-head p{max-width:435px;margin:0 0 4px;line-height:1.75;font-size:15px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.card{border:1px solid;border-radius:17px;padding:31px;display:flex;flex-direction:column;min-height:270px}
.card .index{font-size:12px;font-weight:750;letter-spacing:.16em;margin-bottom:65px}
.card h3{font-size:21px;font-weight:630;letter-spacing:-.04em;line-height:1.25;margin:0 0 12px}
.card p{font-size:14px;line-height:1.77;margin:0;max-width:310px}
.divider{height:1px;background:currentColor;opacity:.18}
.site-footer{padding:34px 0 42px}
.footer-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.site-footer .brand-glyph{width:29px;height:29px;border-radius:9px;font-size:12px}
.site-footer .brand-name{font-size:17px}
.footer-meta{font-size:12px;opacity:.68}
.footer-links{display:flex;gap:20px;font-size:12px;font-weight:650}
.footer-links a{text-underline-offset:4px}
/* Commercial — dark system aesthetic */
.theme-oi{background:#0d2225;color:#eff6ef}
.theme-oi .site-header{border-bottom:1px solid rgba(224,244,235,.14);background:#0d2225}
.theme-oi .brand-glyph{color:#c1f5d8}
.theme-oi .eyebrow{color:#afe7ce}
.theme-oi .hero{background:radial-gradient(circle at 70% 28%,rgba(43,121,110,.27),transparent 37%),#0d2225;position:relative;overflow:hidden}
.theme-oi .hero:before{content:"";position:absolute;right:0;top:0;width:57%;height:100%;opacity:.16;background-image:linear-gradient(#72968b 1px,transparent 1px),linear-gradient(90deg,#72968b 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to left,black,transparent)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(36px,5vw,70px);align-items:center;padding-top:clamp(74px,8vw,125px);padding-bottom:clamp(84px,10vw,146px);position:relative}
.theme-oi .hero-copy h1{font-size:clamp(52px,6vw,91px)}
.theme-oi .hero-copy h1 em{font-style:normal;color:#c7f3d9}
.theme-oi .lede{color:#b2cbc6}
.theme-oi .btn-primary{background:#c4f2d8;color:#10332d}
.theme-oi .btn-primary:hover{background:#fff}
.theme-oi .btn-secondary{border:1px solid #6a8b82;color:#e4f1eb}
.theme-oi .btn-secondary:hover{border-color:#d2f5e1}
.system-panel{border:1px solid rgba(197,237,219,.24);border-radius:24px;background:linear-gradient(155deg,rgba(31,79,74,.78),rgba(13,35,37,.95) 55%);padding:26px;box-shadow:0 35px 100px rgba(0,0,0,.2);position:relative;overflow:hidden}
.panel-top{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#a0c1b5;font-weight:720}
.panel-top .status{display:inline-flex;align-items:center;gap:8px;letter-spacing:.08em;color:#b6f1d6}
.status i{width:6px;height:6px;background:#91f4c0;border-radius:50%;box-shadow:0 0 0 4px rgba(125,255,188,.09)}
.diagram-center{height:284px;display:flex;align-items:center;justify-content:center;position:relative}
.orbit{border:1px dashed rgba(182,236,208,.25);width:238px;height:238px;border-radius:50%;position:absolute}
.orbit.two{width:185px;height:185px;border-style:solid;border-color:rgba(182,236,208,.2)}
.core{height:120px;width:120px;border-radius:38px;background:radial-gradient(circle at 30% 25%,#d5ffe8,#8fdbc1);color:#12392e;display:grid;place-items:center;position:relative;z-index:2;box-shadow:0 0 55px rgba(147,233,196,.18)}
.core span{font-size:42px;letter-spacing:-.12em;font-weight:750;margin-right:5px}
.orbit-label{position:absolute;border:1px solid rgba(192,238,219,.25);padding:8px 10px;border-radius:7px;background:#1b4743;font-size:10px;color:#d0eee1;letter-spacing:.015em;z-index:3}
.orbit-label.one{top:35px;right:4px}.orbit-label.two{left:5px;top:130px}.orbit-label.three{bottom:30px;right:29px}
.panel-base{border-top:1px solid rgba(197,237,219,.16);padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.panel-base small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#94b2a8;margin-bottom:7px}
.panel-base strong{display:block;font-weight:550;font-size:13px;color:#e6f4ea}
.hero-caption{font-size:11px;color:#89a9a1;letter-spacing:.03em;position:absolute;bottom:-26px;right:0}
.oi-band{background:#d6f4df;color:#143a32;padding:25px 0}
.oi-band .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.oi-band p{font-size:16px;font-weight:700;letter-spacing:-.015em;margin:0}
.oi-band span{font-size:12px;letter-spacing:.065em;font-weight:700;text-transform:uppercase}
.theme-oi .section-main{padding:clamp(90px,10vw,145px) 0;background:#f4f6f0;color:#1a3536}
.theme-oi .section-main .eyebrow{color:#376f64}
.theme-oi .section-main .section-head p{color:#586d6c}
.theme-oi .card{border-color:#ccd9d3;background:#fff}
.theme-oi .card .index{color:#438c73}
.theme-oi .card p{color:#607470}
.theme-oi .section-process{background:#e3ede6;color:#1e3c39;padding:clamp(85px,9vw,130px) 0}
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}
.step{border-top:1px solid rgba(24,62,54,.34);padding-top:25px}
.step .number{color:#36735f;font-size:14px;font-weight:800;display:block;margin-bottom:45px}
.step h3{font-size:25px;letter-spacing:-.055em;font-weight:650;line-height:1.2;margin:0 0 12px}
.step p{font-size:14px;color:#536965;line-height:1.72;max-width:310px;margin:0}
.oi-principles{padding:clamp(86px,10vw,130px) 0}
.principles-panel{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.principles-panel h2{font-size:clamp(34px,4.5vw,61px);letter-spacing:-.07em;line-height:1.08;font-weight:590;margin:22px 0}
.principles-panel p{color:#a9c8bd;font-size:16px;line-height:1.8;max-width:480px}
.principles-list{list-style:none;padding:10px 0 0;margin:0}
.principles-list li{padding:23px 0;border-bottom:1px solid rgba(200,239,218,.16);display:flex;align-items:flex-start;gap:18px;font-size:16px;letter-spacing:-.015em}
.principles-list li:before{content:"↗";color:#beefdb;font-size:19px;line-height:1.2}
.oi-contact{background:#c7f3da;color:#12382e;padding:clamp(74px,9vw,115px) 0}
.oi-contact .contact-layout{display:flex;justify-content:space-between;gap:40px;align-items:end}
.oi-contact h2{font-size:clamp(42px,6.3vw,78px);letter-spacing:-.07em;line-height:1.04;font-weight:580;max-width:740px;margin:15px 0}
.oi-contact p{max-width:610px;line-height:1.76;color:#335d52;font-size:15px}
.oi-contact .btn{background:#133d35;color:#eafff2;white-space:nowrap}
.theme-oi .site-footer{background:#0b1d1e}
/* Personal — warmer editorial style */
.theme-ns{background:#f6f4ed;color:#1d3230}
.theme-ns .site-header{background:#f6f4ed;border-bottom:1px solid #d8ddd4}
.theme-ns .brand-glyph{border-color:#305f56;color:#1a5950}
.theme-ns .brand-glyph:after{background:#3d9278}
.theme-ns .nav-cta{background:#204c44;color:#f4fff5;border-color:#204c44}
.theme-ns .eyebrow{color:#2e7869}
.ns-hero{overflow:hidden;position:relative;background:#f6f4ed}
.ns-hero .hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);padding-top:clamp(83px,8vw,125px);padding-bottom:clamp(88px,9vw,140px)}
.ns-hero .hero-copy h1{font-size:clamp(49px,5.6vw,84px);max-width:780px}
.ns-hero .hero-copy h1 em{font-style:italic;font-family:var(--serif);font-weight:500;color:#428775;letter-spacing:-.05em}
.theme-ns .lede{color:#5c6b65}
.theme-ns .btn-primary{background:#24584d;color:#f1fcf5}
.theme-ns .btn-primary:hover{background:#143a33}
.theme-ns .btn-secondary{border:1px solid #bbcac1}
.ns-side{min-height:430px;background:#e8eee5;border:1px solid #d7e1d6;border-radius:26px;padding:30px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.ns-side:after{content:"";width:265px;height:265px;position:absolute;right:-80px;bottom:58px;border:1px solid rgba(29,105,83,.2);border-radius:50%;box-shadow:0 0 0 50px rgba(50,109,82,.05),0 0 0 104px rgba(50,109,82,.035)}
.ns-side .mini-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:750;color:#578478}
.ns-side .path{position:relative;z-index:2}
.path-item{display:grid;grid-template-columns:28px 1fr;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid #c9d8ca}
.path-item:last-child{border:0}
.path-item span{font-size:12px;font-weight:740;color:#4a8a78}
.path-item strong{font-size:26px;letter-spacing:-.055em;line-height:1.2;font-weight:590}
.ns-side .foot{position:relative;z-index:2;padding-top:12px;font-size:13px;color:#537267}
.ns-eyebrow-strip{background:#20493f;color:#d9f3e0;padding:21px 0}
.ns-eyebrow-strip .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-weight:620;font-size:12px;letter-spacing:.075em;text-transform:uppercase}
.ns-perspective{padding:clamp(80px,9vw,130px) 0;background:#fffefa}
.ns-perspective .section-head p{color:#65736c}
.theme-ns .cards .card{border-color:#dde3dc;background:#f8f8f4}
.theme-ns .card .index{color:#558776}
.theme-ns .card p{color:#63726a}
.ns-background{padding:clamp(80px,9vw,130px) 0;background:#e8eee7}
.ns-background .section-head p{color:#63736a}
.timeline{margin-top:28px;border-top:1px solid #c3d4ca}
.timeline-row{display:grid;grid-template-columns:25% 1fr;gap:24px;padding:27px 0;border-bottom:1px solid #c3d4ca}
.timeline-row .when{color:#477c6c;font-size:11px;text-transform:uppercase;font-weight:750;letter-spacing:.14em;padding-top:7px}
.timeline-row h3{margin:0 0 10px;font-size:23px;letter-spacing:-.045em;line-height:1.25;font-weight:640}
.timeline-row p{max-width:740px;color:#5c7068;font-size:14px;line-height:1.8;margin:0}
.ns-now{background:#143a33;color:#f1f6ef;padding:clamp(85px,10vw,140px) 0;overflow:hidden;position:relative}
.ns-now:after{content:"OI";position:absolute;right:-32px;top:10px;font-size:clamp(250px,35vw,580px);font-weight:750;letter-spacing:-.14em;color:rgba(197,242,210,.055);line-height:1;pointer-events:none}
.ns-now .container{position:relative;z-index:1}
.ns-now h2{font-size:clamp(40px,6vw,79px);font-weight:580;letter-spacing:-.07em;line-height:1.07;max-width:840px;margin:22px 0}
.ns-now p{max-width:650px;font-size:17px;color:#b5cec0;line-height:1.78}
.ns-now .btn-primary{background:#c7f3da;color:#10362d;margin-top:20px}
.ns-contact{padding:clamp(70px,9vw,115px) 0}
.ns-contact h2{font-size:clamp(40px,6vw,76px);letter-spacing:-.07em;line-height:1.08;font-weight:590;margin:19px 0}
.ns-contact p{max-width:620px;font-size:16px;color:#62736a;margin-bottom:28px}
.ns-contact .link-list{display:flex;gap:13px;flex-wrap:wrap}
.ns-contact .link-list a{display:inline-flex;align-items:center;gap:10px;border:1px solid #b9cbbd;padding:13px 18px;border-radius:100px;font-size:13px;font-weight:710;text-decoration:none}
.ns-contact .link-list a:hover{background:#e7eee5}
.theme-ns .site-footer{border-top:1px solid #d8ddd4}
@media(max-width:900px){
  .hero-grid,.ns-hero .hero-grid{grid-template-columns:1fr;gap:55px}
  .system-panel{max-width:650px;width:100%;margin:0 auto}
  .hero-caption{display:none}
  .ns-side{max-width:590px;width:100%;min-height:380px}
  .section-head{grid-template-columns:1fr;gap:20px}
  .cards{grid-template-columns:1fr 1fr}
  .cards .card:last-child{grid-column:1/-1;min-height:200px}
  .cards .card .index{margin-bottom:45px}
  .process{gap:20px}
  .principles-panel{gap:36px}
}
@media(max-width:650px){
  .site-header .container{min-height:70px}
  .brand-name{font-size:18px}
  .brand-glyph{height:34px;width:34px}
  .menu-toggle{display:inline-flex}
  .site-nav{display:none;position:absolute;top:70px;left:0;right:0;background:inherit;flex-direction:column;align-items:stretch;gap:0;padding:12px var(--space) 20px;border-bottom:1px solid currentColor;box-shadow:0 10px 16px rgba(0,0,0,.08)}
  .site-nav.open{display:flex}
  .site-nav a{padding:13px 0;font-size:14px}
  .site-nav .nav-cta{text-align:center;padding:12px 10px;margin-top:9px}
  .hero-grid,.ns-hero .hero-grid{padding-top:68px;padding-bottom:78px;gap:50px}
  .hero-copy h1,.theme-oi .hero-copy h1,.ns-hero .hero-copy h1{font-size:clamp(46px,11.2vw,68px);letter-spacing:-.066em;margin-top:25px}
  .lede{font-size:16px}
  .btn-row{align-items:stretch}
  .btn{padding:14px 19px}
  .system-panel{padding:20px}
  .diagram-center{height:260px}
  .orbit{width:210px;height:210px}.orbit.two{width:165px;height:165px}
  .orbit-label.one{right:-4px}.orbit-label.two{left:-4px}
  .section-head h2{font-size:clamp(36px,9vw,48px)}
  .cards{grid-template-columns:1fr}
  .cards .card:last-child{grid-column:auto}
  .cards .card{min-height:230px;padding:25px}
  .cards .card .index{margin-bottom:32px}
  .process{grid-template-columns:1fr;gap:38px}
  .step .number{margin-bottom:24px}
  .principles-panel{grid-template-columns:1fr;gap:8px}
  .oi-contact .contact-layout{align-items:flex-start;flex-direction:column;gap:22px}
  .ns-side{min-height:355px}
  .path-item strong{font-size:24px}
  .timeline-row{grid-template-columns:1fr;gap:6px}
  .footer-row{align-items:flex-start;flex-direction:column;gap:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
