/*
Theme Name: K7 ARC
Theme URI: https://k7arc.com
Author: Ragunanthanan P A
Description: K7 ARC — the next-generation infrastructure company. Section-builder theme edited through Secure Custom Fields, converted from the Claude Design handoff (K7 ARC Home.dc.html + inner pages).
Version: 1.0.0
Requires PHP: 7.4
Text Domain: k7arc
*/

:root{
  --bg:#08090B; --bg2:#0E1116; --bg3:#141821;
  --fg:#F2F1ED; --fg2:#98A0AA;
  --line:rgba(255,255,255,.12); --line2:rgba(255,255,255,.06);
  --gold:#C9A24A; --goldhi:#E7CB86;
  --on-gold:#08090B; --inv-accent:#6F5513; --photo-accent:#C9A24A; --inv-line:rgba(0,0,0,.14);
  --sans:'Archivo',Helvetica,Arial,sans-serif;
  --mono:'JetBrains Mono',monospace;
}
*{box-sizing:border-box;}
html,body{margin:0;overflow-x:clip;}
body{font-family:var(--sans);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}
a:hover{color:var(--gold);}
img{max-width:100%;display:block;}
::selection{background:#C9A24A;color:#08090B;}

.k7-wrap{max-width:1600px;margin:0 auto;}

/* Header */
.k7-header{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--line);}
.k7-hdr{padding:0 40px;height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px;}
.k7-logo{display:flex;align-items:center;gap:12px;flex:none;}
.k7-logo img{width:46px;height:46px;object-fit:contain;}
.k7-logo-text{display:flex;flex-direction:column;gap:3px;}
.k7-logo-name{font-size:17px;font-weight:600;letter-spacing:.05em;line-height:1;}
.k7-logo-tag{font-family:var(--mono);font-size:8px;letter-spacing:.18em;color:var(--gold);text-transform:uppercase;line-height:1;}
.k7-nav{display:flex;align-items:center;font-size:12.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;flex:none;white-space:nowrap;}
.k7-nav a{padding:0 17px;border-left:1px solid var(--line);}
.k7-nav a:last-child{border-right:1px solid var(--line);}
.k7-nav a.is-current{color:var(--gold);}
.k7-hdr-right{display:flex;align-items:center;gap:12px;flex:none;}
.k7-burger{display:none;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line);cursor:pointer;font-size:17px;color:var(--fg);}
.k7-cta{font-size:12.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;padding:12px 20px;background:var(--fg);color:var(--bg);white-space:nowrap;}
.k7-cta:hover{color:var(--bg);}
.k7-mobile-nav{display:none;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 22px 26px;}
.k7-mobile-nav.is-open{display:block;}
.k7-mobile-nav a{display:block;padding:15px 4px;font-size:16px;border-bottom:1px solid var(--line2);}
.k7-mobile-cta{margin-top:18px;padding:16px;font-size:14px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;background:var(--fg);color:var(--bg);text-align:center;}
.k7-mobile-cta:hover{color:var(--bg);}

/* Sections shared */
.k7-section{padding:64px 40px;border-bottom:1px solid var(--line);}
.k7-section--white{background:var(--bg2);}
.k7-section--cream{background:var(--bg);}
.k7-kicker{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);}
.k7-h2{font-weight:500;font-size:clamp(28px,3.6vw,44px);line-height:1.1;letter-spacing:-.028em;margin:26px 0 0;text-wrap:pretty;}

/* Hero (video/image banner) */
.k7-hero{position:relative;min-height:min(82vh,820px);display:flex;flex-direction:column;justify-content:flex-end;padding:0 40px 64px;overflow:hidden;background:#0C0E11;border-bottom:1px solid var(--line);}
.k7-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.k7-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:1;}
.k7-hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,12,.74) 0%,rgba(8,10,12,.5) 42%,rgba(8,10,12,.74) 66%,rgba(8,10,12,.92) 100%);}
.k7-hero-inner{position:relative;color:#F2F1ED;padding-top:56px;}
.k7-hero-kicker{font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#C9A24A;margin-bottom:34px;}
.k7-hero-title{font-weight:600;font-size:clamp(44px,9.4vw,116px);line-height:.94;letter-spacing:-.045em;color:#FFFFFF;margin:0;max-width:1000px;text-wrap:pretty;}
.k7-hero-title.is-accent{color:#D9BE9B;}
.k7-hero-sub{font-size:clamp(16px,1.6vw,19px);font-weight:300;line-height:1.55;max-width:700px;color:rgba(242,241,237,.9);text-wrap:pretty;}
.k7-hero-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-top:44px;padding-top:30px;border-top:1px solid rgba(255,255,255,.18);flex-wrap:wrap;}
.k7-hero-btn{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:16px 26px;border:1px solid rgba(255,255,255,.6);color:#FFFFFF;white-space:nowrap;}
.k7-hero-btn.is-gold{background:var(--gold);color:var(--on-gold);border-color:var(--gold);}

/* Marquee strip — continuous scrolling ticker */
.k7-strip{border-bottom:1px solid var(--line);background:var(--bg3);padding:22px 0;overflow:hidden;}
.k7-marquee{display:flex;align-items:center;gap:30px;width:max-content;animation:k7-marquee-scroll 26s linear infinite;}
.k7-marquee-track{display:flex;align-items:center;gap:30px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--fg2);white-space:nowrap;flex:none;}
.k7-dot{width:5px;height:5px;border-radius:50%;background:var(--gold);flex:none;}
@keyframes k7-marquee-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.k7-marquee{animation:none;}}

/* Two-column split */
.k7-g2{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);}
.k7-g2 > div{padding:64px 40px;}
.k7-g2 > div:first-child{border-right:1px solid var(--line);}

/* Asymmetric heading/copy split (no divider) — e.g. Approach's Mission */
.k7-split-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:80px;align-items:start;}
.k7-split-grid--even{grid-template-columns:1fr 1fr;}

/* Arrow fact list (Why we exist) */
.k7-arrow-head{font-size:19px;font-weight:600;letter-spacing:-.01em;margin-bottom:28px;}
.k7-arrow-list{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);grid-auto-flow:column;column-gap:48px;row-gap:26px;width:100%;}
.k7-arrow-item{display:flex;align-items:baseline;gap:12px;font-size:16px;font-weight:500;letter-spacing:-.01em;}
.k7-arrow-mark{color:var(--gold);font-family:var(--mono);font-size:14px;}

.k7-list-head{font-size:19px;font-weight:600;letter-spacing:-.01em;margin-bottom:20px;}
.k7-num-row{display:grid;grid-template-columns:64px 1fr;gap:24px;padding:26px 0;border-top:1px solid var(--line);transition:background .35s ease,padding-left .35s ease;}
.k7-num-row:hover{padding-left:18px;background:var(--bg3);}
.k7-num-row:last-child{border-bottom:1px solid var(--line);}
.k7-num-row .k7-num{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--gold);padding-top:6px;}
.k7-num-row-stack{display:flex;flex-direction:column;gap:10px;}
.k7-num-row .k7-title{font-size:19px;font-weight:500;letter-spacing:-.018em;display:block;}
.k7-num-row .k7-text{font-size:15px;line-height:1.65;color:var(--fg2);text-wrap:pretty;}
.k7-num-row--lg{padding:30px 0;}
.k7-num-row--lg .k7-title{font-size:20px;font-weight:600;letter-spacing:-.02em;}
.k7-num-row--lg .k7-text{font-size:15.5px;max-width:760px;}

/* Platform tiles (What we invest in) */
.k7-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 14px 14px;border-bottom:1px solid var(--line);}
.k7-tile{position:relative;display:block;overflow:hidden;min-height:min(74vh,780px);background:#0C0E11;}
.k7-tile-media,.k7-tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .7s ease;}
.k7-tile video{opacity:0;}
.k7-tile:hover video{opacity:1;}
.k7-tile:hover .k7-tile-media{transform:scale(1.08);}
.k7-tile-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,12,14,.62) 0%,rgba(10,12,14,.5) 38%,rgba(10,12,14,.72) 62%,rgba(10,12,14,.92) 100%);}
.k7-tile-idx{position:absolute;top:22px;left:22px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.55);}
.k7-tile-body{position:absolute;left:0;right:0;bottom:0;padding:0 34px 74px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px;transition:transform .9s cubic-bezier(.2,.7,.2,1);}
.k7-tile:hover .k7-tile-body{transform:translateY(-14px);}
.k7-tile-kicker{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--photo-accent);}
.k7-tile-title{font-weight:300;font-size:clamp(26px,2.5vw,36px);line-height:1.16;letter-spacing:.055em;text-transform:uppercase;color:#fff;text-wrap:balance;}
.k7-tile-btn{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--photo-accent);border:1px solid var(--photo-accent);padding:17px 30px;display:inline-flex;align-items:center;gap:12px;transition:background .4s ease,color .4s ease;margin-top:8px;}
.k7-tile:hover .k7-tile-btn{background:var(--photo-accent);color:#0C0E11;}

/* Cards grid (Philosophy / three-up) */
.k7-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.k7-cards.k7-cards--2{grid-template-columns:repeat(2,1fr);}
.k7-cards.k7-cards--4{grid-template-columns:repeat(4,1fr);}
.k7-card{background:var(--bg2);padding:44px 34px 50px;display:flex;flex-direction:column;gap:18px;min-height:270px;transition:background .4s ease;}
.k7-card:hover{background:var(--bg3);}
.k7-card-num{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);}
.k7-card-title{font-weight:600;font-size:clamp(21px,2.1vw,26px);letter-spacing:-.028em;margin-top:auto;}
.k7-card-text{font-size:15px;line-height:1.7;color:var(--fg2);text-wrap:pretty;}
.k7-card-link{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;font-weight:500;color:var(--fg);border-bottom:1px solid var(--fg);padding-bottom:8px;align-self:flex-start;margin-top:auto;}
.k7-card--flat{padding:40px 32px 45px;gap:15px;min-height:260px;}
.k7-card--flat .k7-card-title{margin-top:8px;font-weight:500;font-size:clamp(18px,1.8vw,22px);letter-spacing:-.02em;}

/* Dark inverted band (Thesis/Heritage) */
.k7-band{padding:76px 40px;background:var(--fg);color:var(--bg);}
.k7-band .k7-kicker{color:var(--inv-accent);}
.k7-band-h{font-weight:600;font-size:clamp(40px,7.6vw,92px);line-height:1;letter-spacing:-.045em;margin-top:34px;max-width:1200px;}
.k7-band-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-top:44px;padding-top:34px;border-top:1px solid var(--inv-line);flex-wrap:wrap;}
.k7-band-col{font-size:17px;line-height:1.7;opacity:.72;max-width:520px;text-wrap:pretty;}
.k7-band--tight .k7-band-h{font-size:clamp(38px,6.6vw,84px);}
.k7-band--tight .k7-band-col{max-width:560px;}

/* CTA band */
.k7-cta-band{padding:80px 40px;background:var(--bg3);border-bottom:1px solid var(--line);}
.k7-cta-h{font-weight:600;font-size:clamp(38px,6.6vw,80px);line-height:1.02;letter-spacing:-.045em;margin-top:30px;max-width:900px;text-wrap:pretty;}
.k7-cta-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-top:44px;flex-wrap:wrap;}
.k7-cta-text{font-size:17px;line-height:1.65;color:var(--fg2);max-width:560px;text-wrap:pretty;}
.k7-cta-btn{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;background:var(--gold);color:var(--on-gold);padding:20px 34px;white-space:nowrap;}
.k7-cta-btn:hover{color:var(--on-gold);}

/* Footer */
.k7-footer{padding:48px 40px 40px;}
.k7-foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:44px;padding-bottom:40px;border-bottom:1px solid var(--line);}
.k7-foot-brand{display:flex;flex-direction:column;gap:16px;}
.k7-foot-brand .k7-logo img{width:52px;height:52px;}
.k7-foot-tag{font-size:14px;line-height:1.7;color:var(--fg2);max-width:300px;}
.k7-foot-col{display:flex;flex-direction:column;gap:11px;font-size:13.5px;color:var(--fg2);}
.k7-foot-col-h{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;color:var(--fg);text-transform:uppercase;margin-bottom:5px;}
.k7-foot-legal{padding-top:28px;font-size:11.5px;line-height:1.75;color:var(--fg2);max-width:900px;}
.k7-foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:28px;margin-top:22px;border-top:1px solid var(--line2);font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--fg2);text-transform:uppercase;flex-wrap:wrap;gap:14px;}
.k7-foot-bottom .k7-gold{color:var(--gold);}

/* Letter rows (Philosophy) */
.k7-letter-row{display:grid;grid-template-columns:220px 1fr;gap:60px;padding:64px 40px;border-bottom:1px solid var(--line2);}
.k7-letter-row.is-last{border-bottom:1px solid var(--line);}
.k7-letter-mark{font-weight:600;font-size:clamp(96px,11vw,168px);line-height:.8;letter-spacing:-.05em;color:var(--line2);}
.k7-letter-body{display:flex;flex-direction:column;gap:22px;max-width:900px;}
.k7-letter-h{font-weight:500;font-size:clamp(30px,4.2vw,52px);line-height:1.06;letter-spacing:-.032em;margin:0;text-wrap:pretty;}
.k7-letter-text{font-size:16.5px;line-height:1.7;color:var(--fg2);max-width:760px;margin:0;text-wrap:pretty;}
.k7-letter-quote{border-left:2px solid var(--gold);padding:4px 0 4px 16px;display:flex;flex-direction:column;gap:8px;margin-top:6px;}
.k7-letter-quote-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);}
.k7-letter-quote-text{font-size:16px;font-weight:500;letter-spacing:-.014em;}

/* Generic section content (fallback) */
.k7-generic-img{width:100%;height:340px;object-fit:cover;margin-top:26px;}

/* Form embed (third-party CRM/lead forms) */
.k7-form-embed{margin-top:34px;width:100%;}
.k7-form-embed iframe{width:100%;border:none;display:block;}

@media (max-width:1024px){
  .k7-nav{display:none;}
  .k7-burger{display:flex;}
  .k7-cards{grid-template-columns:repeat(2,1fr);}
  .k7-cards.k7-cards--3 > *:last-child:nth-child(odd){grid-column:1 / -1;}
  .k7-section,.k7-band,.k7-cta-band{padding:40px 32px;}
  .k7-strip{padding:20px 32px;}
  .k7-hero{min-height:620px;padding:0 32px 56px;}
  .k7-g2 > div{padding:40px 32px;}
}
@media (max-width:860px){
  .k7-g2{grid-template-columns:1fr;}
  .k7-g2 > div:first-child{border-right:none;}
  .k7-split-grid{grid-template-columns:1fr;gap:34px;}
  .k7-letter-row{grid-template-columns:1fr;gap:18px;padding:44px 22px;}
  .k7-letter-mark{font-size:76px;}
  .k7-hero-foot,.k7-band-foot,.k7-cta-foot{flex-direction:column;align-items:flex-start;gap:26px;}
  .k7-hero{min-height:520px;padding:0 22px 40px;}
  .k7-num-row{grid-template-columns:44px 1fr;gap:16px;}
  .k7-hdr{padding-left:16px;padding-right:12px;}
}
@media (max-width:620px){
  .k7-cards{grid-template-columns:1fr;}
  .k7-cta{display:none;}
  .k7-foot-grid{grid-template-columns:1fr;gap:32px;}
  .k7-foot-bottom{flex-direction:column;align-items:flex-start;}
  .k7-tiles{grid-template-columns:1fr;}
  .k7-arrow-list{grid-template-columns:1fr;grid-template-rows:repeat(6,1fr);row-gap:16px;}
}
@media (max-width:560px){
  .k7-logo-tag{display:none;}
}
