
:root{--paper:#f2efe8;--ink:#0d0d0d;--muted:#66625b;--rule:#bcb6ab;--panel:#e7e1d7;--max:1120px;--reading:760px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55;letter-spacing:-.01em}a{color:inherit}.skip-link{position:absolute;left:-999px;top:10px}.skip-link:focus{left:10px;background:var(--ink);color:var(--paper);padding:10px 14px;z-index:1000}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--ink);background:rgba(242,239,232,.96);backdrop-filter:blur(10px)}.nav{width:min(var(--max),calc(100% - 36px));margin:auto;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand-lockup{display:flex;align-items:center;gap:12px;text-decoration:none}.brand-oval{display:inline-flex;align-items:center;justify-content:center;min-width:92px;height:48px;border:3px solid var(--ink);border-radius:999px;font-weight:900;font-size:1.25rem;letter-spacing:.08em;position:relative;background:var(--paper)}.brand-oval:after{content:"";position:absolute;inset:3px;border:1px solid var(--ink);border-radius:999px}.brand-sub{font-size:.72rem;line-height:1.15;text-transform:uppercase;letter-spacing:.12em;max-width:130px}.nav-links{display:flex;align-items:center;gap:22px}.nav-links a{text-decoration:none;font-size:.92rem;text-transform:uppercase;letter-spacing:.08em}.nav-links a:hover{text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none;border:1px solid var(--ink);background:transparent;padding:8px 10px}main{overflow:hidden}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}.reading{width:min(var(--reading),calc(100% - 36px));margin:auto}.hero{min-height:78vh;display:grid;align-items:center;padding:88px 0 72px;border-bottom:1px solid var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;margin-bottom:18px}.hero h1{margin:0;font-size:clamp(4rem,12vw,10rem);line-height:.82;letter-spacing:-.075em;max-width:950px}.hero h1 span{display:block}.hero-bottom{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;margin-top:42px}.hero-copy{max-width:650px;font-size:clamp(1.25rem,2.8vw,2rem);margin:0}.hero-note{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;text-align:right;max-width:230px}.btn{display:inline-block;text-decoration:none;border:2px solid var(--ink);padding:13px 18px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;transition:.15s ease}.btn:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.btn.secondary{border-width:1px}.section{padding:90px 0;border-bottom:1px solid var(--rule)}.section-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.section-label{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.section h2,.page-title{font-size:clamp(3rem,7vw,6rem);line-height:.9;letter-spacing:-.06em;margin:0 0 28px}.lede{font-size:clamp(1.25rem,2.3vw,1.75rem);max-width:760px}.triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--ink);margin-top:50px}.triptych article{padding:28px;min-height:220px}.triptych article+article{border-left:1px solid var(--ink)}.triptych h3{margin:0 0 16px;font-size:1.45rem}.triptych p{margin:0}.principle-list{margin-top:36px;border-top:1px solid var(--ink)}.principle-row{display:grid;grid-template-columns:90px 1fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--ink);align-items:start}.principle-num{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.principle-text{font-size:clamp(1.45rem,3vw,2.45rem);line-height:1.02;letter-spacing:-.035em}.feature{display:grid;grid-template-columns:1.1fr .9fr;border:1px solid var(--ink);min-height:360px}.feature-copy{padding:44px}.feature-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem}.feature h3{font-size:clamp(2.3rem,5vw,4.6rem);line-height:.92;letter-spacing:-.05em;margin:18px 0 24px}.feature-art{background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;padding:36px;text-align:center}.feature-art .quote{font-size:clamp(2rem,4vw,4rem);font-weight:900;line-height:.95;letter-spacing:-.05em}.promise{background:var(--ink);color:var(--paper)}.promise-list{border-top:1px solid var(--paper);margin-top:36px}.promise-list div{border-bottom:1px solid var(--paper);padding:15px 0;text-transform:uppercase;letter-spacing:.1em;font-size:.84rem}.sticker-preview{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.big-oval{aspect-ratio:1.72/1;border:8px solid var(--ink);border-radius:999px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;position:relative;background:#fff;box-shadow:0 18px 0 rgba(13,13,13,.08)}.big-oval:after{content:"";position:absolute;inset:8px;border:2px solid var(--ink);border-radius:999px}.big-oval strong{font-size:clamp(3.5rem,9vw,7.5rem);line-height:.8;letter-spacing:.04em;position:relative;z-index:2}.big-oval small{margin-top:16px;font-size:clamp(.7rem,1.5vw,1rem);letter-spacing:.05em;position:relative;z-index:2}.page-hero{padding:95px 0 56px;border-bottom:1px solid var(--ink)}.page-sub{max-width:760px;font-size:1.25rem;color:var(--muted)}.article{padding:72px 0 110px}.article p{font-size:1.12rem;margin:0 0 1.35em}.all-principles{padding:70px 0 100px}.principle-card{padding:34px 0 36px;border-bottom:1px solid var(--ink)}.principle-card h2{font-size:clamp(2rem,4.5vw,4rem);line-height:.95;letter-spacing:-.04em;margin:0 0 14px}.principle-card p{font-size:1.2rem;max-width:760px;margin:0}.letter-list{padding:70px 0 100px}.letter-item{display:grid;grid-template-columns:150px 1fr auto;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid var(--ink)}.letter-item:first-child{border-top:1px solid var(--ink)}.letter-item h2{font-size:clamp(1.7rem,4vw,3.5rem);line-height:1;letter-spacing:-.04em;margin:0}.letter-item .status{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;color:var(--muted)}.footer{border-top:1px solid var(--ink)}.footer-inner{width:min(var(--max),calc(100% - 36px));margin:auto;padding:34px 0 50px;display:grid;grid-template-columns:1fr auto;gap:30px}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-links a{text-decoration:none;font-size:.9rem}.footer-note{text-align:right;color:var(--muted);font-size:.9rem}@media(max-width:820px){.nav-links{display:flex;position:static;background:transparent;border-bottom:0;padding:0;flex-direction:row;align-items:center}.js .nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--ink);padding:18px;flex-direction:column;align-items:flex-start}.js .nav-links.open{display:flex}.js .menu-toggle{display:block}.brand-sub{display:none}.hero{min-height:auto}.hero-bottom,.section-grid,.feature,.sticker-preview{grid-template-columns:1fr}.hero-note{text-align:left}.triptych{grid-template-columns:1fr}.triptych article+article{border-left:0;border-top:1px solid var(--ink)}.feature-art{min-height:280px}.letter-item{grid-template-columns:1fr;gap:10px}.footer-inner{grid-template-columns:1fr}.footer-note{text-align:left}}


/* Official SMID logo */
.site-logo{
  display:block;
  width:190px;
  height:auto;
  max-height:62px;
  object-fit:contain;
}

@media(max-width:820px){
  .site-logo{
    width:155px;
    max-height:54px;
  }
}


.big-logo-preview{
  display:block;
  width:100%;
  max-width:560px;
  height:auto;
  justify-self:center;
}

@media(max-width:820px){
  .big-logo-preview{
    max-width:420px;
  }
}


/* SMID welcome popup */
.smid-popup[hidden]{
  display:none;
}

.smid-popup{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:20px;
}

.smid-popup-backdrop{
  position:absolute;
  inset:0;
  background:rgba(13,13,13,.72);
}

.smid-popup-card{
  position:relative;
  z-index:1;
  width:min(620px,100%);
  background:var(--paper);
  border:3px solid var(--ink);
  padding:42px;
  box-shadow:14px 14px 0 var(--ink);
}

.smid-popup-card h2{
  margin:0 0 16px;
  font-size:clamp(2.6rem,7vw,5.5rem);
  line-height:.9;
  letter-spacing:-.06em;
}

.smid-popup-big{
  font-size:clamp(1.5rem,3vw,2.2rem);
  font-weight:900;
  line-height:1.05;
  margin:0 0 18px;
}

.smid-popup-close{
  position:absolute;
  top:10px;
  right:14px;
  border:0;
  background:transparent;
  font-size:2rem;
  line-height:1;
  cursor:pointer;
}

body.popup-open{
  overflow:hidden;
}

@media(max-width:600px){
  .smid-popup-card{
    padding:34px 24px 28px;
    box-shadow:8px 8px 0 var(--ink);
  }
}


.smid-popup-logo{
  display:block;
  width:min(230px,70%);
  height:auto;
  margin:0 auto 24px;
}

/* SMID V12 additions */
:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.nav-links a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px}
.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:34px}
.alt-section{background:#e7e1d7}
.product-feature,.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}
.product-photo-frame{margin:0;border:1px solid var(--ink);background:#fff;padding:12px;box-shadow:14px 14px 0 rgba(13,13,13,.12);transform:rotate(-1deg)}
.product-photo-frame img{display:block;width:100%;height:auto}
.product-size{font-size:1rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.product-price{display:flex;flex-direction:column;gap:4px;margin:24px 0 0;padding:18px 20px;border:2px solid var(--ink);background:var(--ink);color:#fff}
.product-price strong{font-family:Arial Black,Arial,sans-serif;font-size:clamp(1.25rem,3vw,1.8rem);letter-spacing:-.02em}
.product-price>span{font-size:.92rem;font-weight:700}
.link-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--ink);margin-top:48px}
.link-grid a{min-height:180px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transition:background .15s,color .15s}
.link-grid a:hover{background:var(--ink);color:var(--paper)}
.link-grid span{font-size:clamp(1.8rem,4vw,3.6rem);font-weight:900;line-height:.95;letter-spacing:-.045em}
.link-grid small{text-transform:uppercase;letter-spacing:.1em;font-size:.76rem;margin-top:24px}
.spec-list{margin:34px 0;border-top:1px solid var(--ink)}
.spec-list div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--rule)}
.spec-list dt{font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.spec-list dd{margin:0}
.notice{border:2px solid var(--ink);padding:20px;margin-top:28px;background:var(--panel)}
.offline-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--ink);counter-reset:offline}
.offline-list li{counter-increment:offline;display:grid;grid-template-columns:80px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--ink);font-size:clamp(1.5rem,3.5vw,3rem);font-weight:800;line-height:1.05;letter-spacing:-.035em}
.offline-list li:before{content:counter(offline,decimal-leading-zero);font-size:.76rem;font-weight:400;letter-spacing:.14em;padding-top:.45rem}
.exit-line{font-size:1.25rem;margin:42px 0 0;color:var(--muted)}
.challenge-page{min-height:calc(100vh - 76px);display:grid;align-items:center}
.challenge{padding:90px 0}
.challenge h1{font-size:clamp(4rem,12vw,10rem);line-height:.82;letter-spacing:-.07em;margin:0;max-width:1100px}
.challenge-line{font-size:clamp(1.7rem,4vw,3.6rem);font-weight:900;line-height:1;margin:34px 0 18px;max-width:850px}
.challenge p:not(.challenge-line){max-width:720px;font-size:1.12rem}
.water-page{background:#173b45;color:#f4f0e7;min-height:calc(100vh - 76px);display:grid;align-items:center}
.water-page .btn.light{border-color:#f4f0e7;color:#f4f0e7}
.water-page .btn.light:hover{background:#f4f0e7;color:#173b45}
.dark-footer{background:#173b45;color:#f4f0e7;border-color:#f4f0e7}
.dark-footer .footer-note{color:#d5ddd9}
.contact-email{font-size:clamp(1.3rem,4vw,2.5rem)!important;font-weight:900;overflow-wrap:anywhere}
.article h2{font-size:clamp(1.8rem,4vw,3rem);line-height:1;margin:2em 0 .6em;letter-spacing:-.035em}

@media(max-width:820px){
  .product-feature,.product-detail,.link-grid{grid-template-columns:1fr}
  .product-photo-frame{box-shadow:8px 8px 0 rgba(13,13,13,.12)}
  .link-grid{border-left:1px solid var(--ink)}
  .offline-list li{grid-template-columns:52px 1fr}
  .challenge{padding:70px 0}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
