/* ============================================================
   INNER PAGES — shared premium chrome for about/services/etc.
   ============================================================ */
.inner-head{
  position:relative;overflow:hidden;
  padding:calc(var(--rail)*1.6) var(--gutter) calc(var(--rail)*.8);
  padding-left:calc(var(--rail-left) + var(--gutter));
  min-height:80vh;display:flex;align-items:flex-end;
  background:
    radial-gradient(50% 70% at 80% 10%,color-mix(in srgb,var(--breeze-3) 35%,transparent) 0%,transparent 60%),
    radial-gradient(40% 60% at 10% 90%,color-mix(in srgb,var(--leaf-2) 24%,transparent) 0%,transparent 60%),
    var(--bg);
  border-bottom:1px solid var(--rule);
}
.inner-head::before{
  content:attr(data-section);position:absolute;right:var(--gutter);bottom:24px;
  font-family:var(--ff-display);font-weight:300;font-size:clamp(120px,18vw,280px);
  line-height:.82;letter-spacing:-.05em;color:var(--on-bg);
  -webkit-text-stroke:1px var(--on-bg);color:transparent;opacity:.08;text-transform:lowercase;
  pointer-events:none;
}
.ih-grid{position:relative;display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,4fr);gap:clamp(24px,4vw,80px);align-items:end;width:100%}
.ih-grid .idx{align-self:start;font:500 11px/1 var(--ff-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}
.ih-grid h1{grid-column:2;font-size:clamp(56px,10vw,180px)}
.ih-grid h1 span{display:block}
.ih-grid .lede,.ih-grid .ih-tags{grid-column:2}
.ih-tags{display:flex;flex-wrap:wrap;gap:14px 22px;margin-top:24px}
.ih-tags .eyebrow{padding:8px 12px;border:1px solid var(--rule)}

/* ---------- About body ---------- */
.about-body{padding-left:calc(var(--rail-left) + var(--gutter));padding-top:clamp(80px,10vw,160px)}
.ab-grid{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(30px,5vw,80px)}
.ab-grid .idx{align-self:start;margin-top:8px}
.ab-col p{color:var(--ink-soft)}
.ab-col p + p{margin-top:1em}

/* ---------- Values editorial ---------- */
.values-ed{padding:clamp(80px,10vw,160px) 0;background:var(--bg-alt);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.ved-list{margin-top:clamp(40px,6vw,80px)}
.ved-row{
  display:grid;grid-template-columns:120px minmax(0,2fr) minmax(0,3fr);gap:clamp(24px,4vw,80px);align-items:start;
  padding:clamp(28px,4vw,52px) 0;border-bottom:1px solid var(--rule);
  transition:padding-left .5s var(--e-breeze);
}
.ved-row:first-child{border-top:1px solid var(--rule)}
.ved-row:hover{padding-left:14px;background:color-mix(in srgb,var(--accent) 4%,transparent)}
.ved-n{font-family:var(--ff-display);font-weight:320;font-size:clamp(44px,5vw,72px);line-height:.9;color:var(--accent);letter-spacing:-.03em}
.ved-row h3{max-width:14ch}
.ved-row p{color:var(--ink-soft);max-width:52ch}
@media (max-width:900px){
  .inner-head{padding-left:var(--gutter)}
  .ih-grid{grid-template-columns:1fr}
  .ih-grid .idx{grid-column:1}
  .ih-grid h1,.ih-grid .lede,.ih-grid .ih-tags{grid-column:1}
  .about-body{padding-left:var(--gutter)}
  .ab-grid,.ved-row{grid-template-columns:1fr}
}

/* ---------- Services detail ---------- */
.svc-block{padding:clamp(80px,10vw,160px) 0;border-bottom:1px solid var(--rule)}
.svc-block:nth-child(even){background:var(--bg-alt)}
.svc-grid{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,4fr);gap:clamp(24px,4vw,80px);padding:0 var(--gutter);align-items:start}
.svc-grid .idx{font:500 11px/1 var(--ff-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}
.svc-body h2{max-width:16ch;margin-bottom:22px}
.svc-body .lede{max-width:38ch;margin:10px 0 40px}
.svc-cols{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,72px);margin-top:40px;padding-top:30px;border-top:1px solid var(--rule)}
.svc-cols h4{color:var(--accent);margin-bottom:16px}
.svc-cols ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-family:var(--ff-mono);font-size:13px;color:var(--ink-soft)}
.svc-cols ul li{padding-left:18px;position:relative}
.svc-cols ul li::before{content:"—";position:absolute;left:0;color:var(--accent)}
.svc-pricing{display:flex;gap:30px;flex-wrap:wrap;margin-top:40px;padding-top:30px;border-top:1px solid var(--rule)}
.svc-pricing .price{display:flex;flex-direction:column;gap:6px}
.svc-pricing .price-n{font-family:var(--ff-display);font-size:36px;font-weight:380;letter-spacing:-.02em}
.svc-pricing .price-l{font:500 10px/1 var(--ff-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}
@media (max-width:900px){.svc-grid,.svc-cols{grid-template-columns:1fr}}

/* ---------- Portfolio grid ---------- */
.pf-grid{padding:clamp(80px,10vw,160px) var(--gutter);display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.pf-item{position:relative;aspect-ratio:4/5;overflow:hidden;border:1px solid var(--rule);background:var(--bg-alt);transition:transform .6s var(--e-breeze)}
.pf-item:hover{transform:translateY(-8px)}
.pf-item.sz-lg{grid-column:span 7;aspect-ratio:5/4}
.pf-item.sz-md{grid-column:span 5}
.pf-item.sz-sm{grid-column:span 4}
.pf-item.sz-wd{grid-column:span 8;aspect-ratio:8/5}
.pf-item canvas{position:absolute;inset:0;width:100%;height:100%}
.pf-meta{position:absolute;inset:auto 0 0 0;padding:20px 22px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.55));color:#fff;display:flex;justify-content:space-between;align-items:end;gap:12px}
.pf-meta h3{font-size:22px;line-height:1.1;max-width:14ch;color:#fff}
.pf-meta .mono{font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:.9}
@media (max-width:900px){.pf-grid{grid-template-columns:1fr}.pf-item,.pf-item.sz-lg,.pf-item.sz-md,.pf-item.sz-sm,.pf-item.sz-wd{grid-column:span 1}}

/* ---------- Journal index ---------- */
.jn-head-wrap{padding:0 var(--gutter) clamp(40px,6vw,80px)}

/* ---------- Contact ---------- */
.contact-body{
  padding:clamp(70px,9vw,130px) 0;
  display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  gap:clamp(36px,6vw,120px);padding:clamp(70px,9vw,130px) var(--gutter);
}
.ci-block dl{margin:0}
.ci-block dt{font:500 11px/1 var(--ff-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);margin-top:26px}
.ci-block dd{margin:8px 0 0;font-family:var(--ff-display);font-weight:380;font-size:clamp(20px,2vw,28px);letter-spacing:-.015em}
.ci-block dd a:hover{color:var(--accent)}
.ci-block .ci-lede{margin-bottom:40px}

.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--on-bg)}
.contact-form .field{padding:20px 0;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:8px;position:relative}
.contact-form .field.full{grid-column:1/-1}
.contact-form .field:nth-child(odd){padding-right:24px;border-right:1px solid var(--rule)}
.contact-form .field:nth-child(even){padding-left:24px}
.contact-form label{font:500 11px/1 var(--ff-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}
.contact-form input,.contact-form textarea,.contact-form select{
  width:100%;border:0;background:transparent;color:var(--on-bg);
  font:400 18px/1.5 var(--ff-body);padding:6px 0;outline:none;
}
.contact-form textarea{min-height:140px;resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--ink-soft);opacity:.6}
.contact-form .submit{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding:30px 0;gap:20px;flex-wrap:wrap}
@media (max-width:900px){
  .contact-body{grid-template-columns:1fr}
  .contact-form{grid-template-columns:1fr}
  .contact-form .field:nth-child(odd){padding-right:0;border-right:0}
  .contact-form .field:nth-child(even){padding-left:0}
}
