:root {
  --paper: #f4f1e9;
  --paper-2: #ebe7dc;
  --white: #fffdf8;
  --ink: #111318;
  --muted: #666a70;
  --muted-2: #8a8f95;
  --navy: #17213d;
  --navy-2: #0f1931;
  --orange: #ff6b35;
  --orange-soft: #ffcfbd;
  --green: #18a06f;
  --line: rgba(17,19,24,.14);
  --line-dark: rgba(255,255,255,.16);
  --radius: 26px;
  --radius-sm: 16px;
  --shadow: 0 24px 70px rgba(26,28,33,.12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }
img, video { max-width: 100%; }
::selection { background: var(--orange); color: white; }

.site-shell { max-width: 1520px; margin-inline: auto; padding-inline: 42px; }
.section-editorial { padding: 150px 0; }
.section-number { display: inline-flex; width: 36px; height: 36px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 50%; font-size: .73rem; font-weight: 800; }
.section-number.light { border-color: rgba(255,255,255,.35); color: white; }
.section-label { margin: 12px 0 0; text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 800; color: var(--muted); }
.section-label.light { color: rgba(255,255,255,.64); }
.section-heading { display: grid; grid-template-columns: 180px minmax(0,1fr) 340px; gap: 44px; align-items: end; margin-bottom: 78px; }
.section-heading h2, .creative-head h2, .growth-copy h2, .recommendation-title h2, .contact-grid h2 {
  margin: 0;
  font-size: clamp(3.6rem, 7vw, 7.2rem);
  line-height: .9;
  letter-spacing: -.075em;
  font-weight: 650;
}
.section-heading h2 em, .growth-copy h2 em, .contact-grid h2 em { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; letter-spacing: -.04em; color: var(--orange); }
.section-heading > p { margin: 0; max-width: 340px; color: var(--muted); font-size: 1.05rem; line-height: 1.7; }

/* NAV */
.portfolio-nav { padding: 20px 0; transition: .3s ease; z-index: 1030; }
.portfolio-nav.scrolled { background: rgba(244,241,233,.88); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border-bottom: 1px solid var(--line); padding: 12px 0; }
.brand-mark { font-size: 1.7rem; font-weight: 900; letter-spacing: -.07em; color: var(--ink); }
.brand-mark span { color: var(--orange); }
.nav-link { color: #40444a; font-size: .9rem; font-weight: 650; padding: .75rem .8rem !important; }
.nav-link:hover, .nav-link.active { color: var(--orange); }
.nav-contact { margin-left: 18px; display: inline-flex; gap: 12px; align-items: center; padding: 11px 16px; border-radius: 999px; background: var(--ink); color: white; font-size: .88rem; font-weight: 700; transition: .2s ease; }
.nav-contact:hover { background: var(--orange); color: white; transform: translateY(-1px); }
.menu-lines { width: 27px; height: 20px; position: relative; display: block; }
.menu-lines i { position:absolute; left:0; width:27px; height:2px; background:var(--ink); }
.menu-lines i:first-child { top:6px; } .menu-lines i:last-child { top:14px; }

/* HERO */
.hero-editorial { padding: 145px 0 72px; min-height: 100svh; display: flex; align-items: center; }
.hero-topline { display:flex; justify-content:space-between; gap:20px; align-items:center; padding-bottom: 34px; border-bottom:1px solid var(--line); }
.availability-pill { display:inline-flex; align-items:center; gap:10px; font-size:.78rem; font-weight:650; color:#4f5359; }
.availability-dot { width:8px; height:8px; background:var(--green); border-radius:50%; box-shadow:0 0 0 5px rgba(24,160,111,.1); }
.hero-location { color:var(--muted); font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.hero-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(320px,.5fr); gap:70px; align-items:end; padding:70px 0 72px; }
.hero-kicker { margin:0 0 18px; color:var(--muted); font-size:.84rem; text-transform:uppercase; letter-spacing:.11em; font-weight:800; }
.hero-heading h1 { margin:0; max-width:1050px; font-size:clamp(4.6rem, 9vw, 10rem); line-height:.84; letter-spacing:-.085em; font-weight:700; }
.hero-heading h1 em { font-family:Georgia, 'Times New Roman', serif; font-weight:400; letter-spacing:-.045em; color:var(--orange); }
.hero-intro { padding-bottom: 10px; }
.hero-intro p { margin:0; color:#4f5359; font-size:1.12rem; line-height:1.75; }
.hero-intro strong { color:var(--ink); font-weight:750; }
.hero-actions { display:flex; align-items:center; gap:24px; margin-top:30px; flex-wrap:wrap; }
.btn-pill { display:inline-flex; align-items:center; justify-content:center; gap:16px; border:0; border-radius:999px; padding:14px 22px; font-size:.9rem; font-weight:800; transition:.25s ease; }
.btn-dark-pill { background:var(--ink); color:white; }.btn-dark-pill:hover { background:var(--orange); color:white; transform:translateY(-2px); }
.btn-light-pill { background:white; color:var(--navy); }.btn-light-pill:hover { background:var(--orange); color:white; transform:translateY(-2px); }
.text-link { font-size:.9rem; font-weight:750; border-bottom:1px solid var(--line); padding-bottom:4px; }
.text-link:hover { color:var(--orange); border-color:var(--orange); }
.hero-triad { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.triad-card { min-height:380px; padding:30px; position:relative; overflow:hidden; border-right:1px solid var(--line); transition:.35s ease; display:flex; flex-direction:column; }
.triad-card:last-child { border-right:0; }
.triad-card:hover { background:var(--white); }
.triad-head { display:flex; justify-content:space-between; align-items:center; color:var(--muted); font-size:.75rem; font-weight:800; }
.triad-head small { letter-spacing:.15em; color:var(--orange); }
.triad-card h2 { margin:34px 0 14px; font-size:clamp(2rem,3.2vw,3.6rem); line-height:.95; letter-spacing:-.055em; font-weight:650; max-width:420px; }
.triad-card p { margin:0; color:var(--muted); line-height:1.6; max-width:390px; font-size:.95rem; }
.triad-image { margin-top:auto; height:120px; border-radius:14px; overflow:hidden; background:#ddd; transform:translateY(25px); transition:.35s ease; box-shadow:0 14px 30px rgba(10,20,30,.12); }
.triad-image img { width:100%; height:100%; object-fit:cover; object-position:top; }
.triad-card:hover .triad-image { transform:translateY(5px); }

/* PROOF */
.proof-strip { background:var(--navy); color:white; padding:32px 0; }
.proof-grid { display:grid; grid-template-columns:repeat(5,1fr); }
.proof-grid > div { display:flex; align-items:center; gap:16px; padding:10px 24px; border-right:1px solid var(--line-dark); }
.proof-grid > div:first-child { padding-left:0; }.proof-grid > div:last-child { border-right:0; }
.proof-grid strong { font-size:2rem; letter-spacing:-.05em; color:var(--orange-soft); }
.proof-grid span { font-size:.82rem; line-height:1.35; color:rgba(255,255,255,.78); }
.proof-grid small { color:rgba(255,255,255,.46); }

/* WORK */
.work-section { background:var(--white); }
.editorial-work-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:34px; align-items:start; }
.work-card { min-width:0; }
.work-card-xl { grid-row:span 2; }
.work-card-half { margin-top: 10px; }
.work-media { width:100%; padding:0; border:0; background:#ddd; border-radius:var(--radius); overflow:hidden; position:relative; aspect-ratio:16/10; cursor:pointer; display:block; }
.work-card-xl .work-media { aspect-ratio: 4/5; }
.work-media img { width:100%; height:100%; object-fit:cover; object-position:top; transition:transform .7s cubic-bezier(.2,.8,.2,1); }
.work-media::after { content:''; position:absolute; inset:0; background:linear-gradient(to bottom,transparent 55%,rgba(0,0,0,.18)); }
.work-media:hover img { transform:scale(1.035); }
.work-badge { position:absolute; left:20px; top:20px; z-index:2; padding:8px 11px; border-radius:999px; background:rgba(255,255,255,.9); backdrop-filter:blur(8px); font-size:.72rem; font-weight:800; }
.work-open { position:absolute; right:20px; top:20px; z-index:2; width:42px; height:42px; border-radius:50%; background:var(--orange); color:white; display:flex; align-items:center; justify-content:center; font-size:1.1rem; }
.work-copy { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,.65fr) auto; gap:24px; align-items:start; padding:22px 2px 10px; }
.work-copy > div { display:flex; gap:14px; align-items:baseline; }.work-index { color:var(--muted-2); font-size:.75rem; font-weight:800; }.work-copy h3 { margin:0; font-size:2rem; letter-spacing:-.05em; }.work-copy p { margin:0; color:var(--muted); line-height:1.55; }.work-copy a { font-size:.82rem; font-weight:800; white-space:nowrap; border-bottom:1px solid var(--line); padding-bottom:3px; }.work-copy a:hover { color:var(--orange); border-color:var(--orange); }
.project-stat { margin-top:14px; background:var(--navy); color:white; border-radius:var(--radius-sm); padding:20px 22px; display:flex; align-items:center; gap:16px; }.project-stat strong { font-size:2.5rem; color:var(--orange-soft); }.project-stat span { color:rgba(255,255,255,.72); line-height:1.4; }
.mini-stats { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }.mini-stats span { background:var(--paper); border:1px solid var(--line); border-radius:999px; padding:8px 12px; font-size:.78rem; color:var(--muted); }.mini-stats strong { color:var(--ink); }
.more-work { margin-top:90px; padding-top:32px; border-top:1px solid var(--line); display:grid; grid-template-columns:300px 1fr; gap:42px; }
.more-work-title span { color:var(--orange); text-transform:uppercase; letter-spacing:.12em; font-size:.72rem; font-weight:800; }.more-work-title h3 { margin:10px 0 0; font-size:2rem; letter-spacing:-.05em; }
.more-work-cards { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }.mini-work { border:0; background:none; padding:0; text-align:left; cursor:pointer; }.mini-work img { width:100%; aspect-ratio:16/9; object-fit:cover; object-position:top; border-radius:18px; }.mini-work span { display:flex; justify-content:space-between; gap:10px; padding-top:12px; font-weight:800; }.mini-work b { color:var(--orange); }

/* GROWTH */
.growth-section { background:var(--navy); color:white; padding:140px 0 120px; }
.growth-shell { display:grid; grid-template-columns:.85fr 1.15fr; gap:72px; align-items:center; }
.growth-copy .section-label { color:rgba(255,255,255,.52); }.growth-copy h2 { font-size:clamp(3.7rem,6vw,6.6rem); }.growth-copy p { color:rgba(255,255,255,.7); line-height:1.78; font-size:1.03rem; max-width:610px; margin:28px 0 30px; }
.growth-visual { background:white; border-radius:var(--radius); padding:14px; color:var(--ink); box-shadow:0 30px 80px rgba(0,0,0,.25); }.growth-visual > img { width:100%; border-radius:17px; display:block; }
.growth-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:10px; }.growth-metrics article { background:var(--paper); border-radius:14px; padding:18px; }.growth-metrics strong { display:block; font-size:2rem; letter-spacing:-.05em; }.growth-metrics span { color:var(--muted); font-size:.8rem; }
.growth-note { margin:26px 0 0; color:rgba(255,255,255,.38); font-size:.75rem; max-width:1000px; line-height:1.6; }

/* CAPABILITIES */
.capabilities-section { background:var(--paper); }
.capability-list { border-top:1px solid var(--line); }
.capability-row { display:grid; grid-template-columns:70px 1fr .9fr 1.2fr; gap:30px; align-items:start; padding:38px 0; border-bottom:1px solid var(--line); }
.cap-index { color:var(--muted-2); font-size:.78rem; font-weight:800; }.cap-name span { color:var(--orange); font-size:.72rem; letter-spacing:.13em; font-weight:900; }.cap-name h3 { margin:8px 0 0; font-size:2rem; letter-spacing:-.05em; }.capability-row > p { margin:0; color:var(--muted); line-height:1.65; }.cap-tags { display:flex; flex-wrap:wrap; gap:8px; }.cap-tags span { border:1px solid var(--line); background:rgba(255,255,255,.55); border-radius:999px; padding:8px 11px; font-size:.74rem; color:#50545b; }

/* CREATIVE */
.creative-section { background:#111318; color:white; padding:140px 0 150px; }
.creative-head { display:grid; grid-template-columns:180px minmax(0,1fr) 350px; gap:44px; align-items:end; margin-bottom:62px; }.creative-head h2 { font-size:clamp(3.6rem,7vw,7rem); }.creative-head > p { margin:0; color:rgba(255,255,255,.6); line-height:1.7; }
.creative-feature { margin-bottom:34px; }.malo-card { display:grid; grid-template-columns:1.25fr .75fr; min-height:520px; border-radius:var(--radius); overflow:hidden; background:#08090b; border:1px solid rgba(255,255,255,.09); }.malo-card > img { width:100%; height:100%; object-fit:cover; object-position:top; }.malo-card > div { padding:48px; display:flex; flex-direction:column; justify-content:flex-end; }.malo-card span { color:var(--orange-soft); letter-spacing:.13em; font-size:.72rem; font-weight:900; }.malo-card h3 { margin:12px 0; font-size:3.4rem; letter-spacing:-.06em; }.malo-card p { color:rgba(255,255,255,.6); line-height:1.6; }.malo-card b { margin-top:18px; font-size:.85rem; color:white; }
.video-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }.video-piece { min-width:0; }.video-frame { background:#08090b; border-radius:22px; overflow:hidden; aspect-ratio:9/14; }.video-frame video { width:100%; height:100%; object-fit:cover; display:block; }.video-meta { display:flex; justify-content:space-between; gap:18px; padding:14px 2px 0; }.video-meta div { display:flex; flex-direction:column; }.video-meta strong { font-size:1rem; }.video-meta span,.video-meta small { color:rgba(255,255,255,.48); font-size:.76rem; }

/* EXPERIENCE */
.experience-section { background:var(--white); }.experience-grid { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:70px; }.experience-list { border-top:1px solid var(--line); }.experience-item { display:grid; grid-template-columns:190px 1fr; gap:28px; padding:30px 0; border-bottom:1px solid var(--line); }.experience-item > span { color:var(--muted-2); font-size:.76rem; font-weight:800; }.experience-item h3 { margin:0; font-size:1.8rem; letter-spacing:-.04em; }.experience-item h4 { margin:4px 0 10px; color:var(--orange); font-size:.88rem; font-weight:800; }.experience-item p { margin:0; color:var(--muted); line-height:1.6; }.experience-aside { display:flex; flex-direction:column; gap:14px; }.aside-card { padding:24px; border-radius:18px; background:var(--paper); border:1px solid var(--line); }.aside-card span { display:block; color:var(--muted-2); text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; font-weight:800; }.aside-card strong { display:block; margin-top:14px; font-size:1.35rem; line-height:1.2; }.aside-card p { margin:8px 0 0; color:var(--muted); font-size:.86rem; line-height:1.55; }

/* RECOMMENDATIONS */
.recommendation-band { background:var(--paper-2); padding:110px 0; }.recommendation-title { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:42px; }.recommendation-title > span { color:var(--orange); text-transform:uppercase; letter-spacing:.13em; font-size:.72rem; font-weight:900; }.recommendation-title h2 { font-size:clamp(3rem,5.5vw,5.8rem); max-width:850px; }.recommendation-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.quote-card { background:var(--white); border:1px solid var(--line); border-radius:20px; padding:30px; min-height:280px; display:flex; flex-direction:column; justify-content:space-between; }.quote-card blockquote { margin:0; font-size:1.05rem; line-height:1.62; letter-spacing:-.01em; }.quote-card div { display:flex; flex-direction:column; margin-top:30px; }.quote-card span { color:var(--muted); font-size:.8rem; }

/* CONTACT */
.contact-editorial { background:var(--orange); padding:120px 0; }.contact-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:80px; align-items:end; }.contact-grid .section-label { color:rgba(17,19,24,.62); }.contact-grid h2 { font-size:clamp(4rem,8vw,8rem); }.contact-grid h2 em { color:white; }.contact-copy p { font-size:1.05rem; line-height:1.7; max-width:520px; }.contact-links { display:flex; flex-direction:column; align-items:flex-start; gap:12px; margin-top:28px; }.contact-links a { font-weight:800; border-bottom:1px solid rgba(17,19,24,.3); padding-bottom:4px; }.contact-links .primary-contact { font-size:1.3rem; }.contact-links a:hover { color:white; border-color:white; }
.site-footer { background:var(--ink); color:white; padding:24px 0; }.site-footer .brand-mark { color:white; }.footer-line { display:flex; justify-content:space-between; align-items:center; gap:20px; }.footer-line p { margin:0; color:rgba(255,255,255,.54); font-size:.78rem; }

/* MODALS / CASE STUDIES */
.portfolio-modal .modal-dialog { max-width:1280px; }
.portfolio-modal .modal-content { background:var(--white); color:var(--ink); border:0; border-radius:24px; box-shadow:0 30px 120px rgba(0,0,0,.28); }
.portfolio-modal .modal-header { padding:30px 34px 18px; align-items:flex-start; }
.portfolio-modal .modal-header h2 { margin:5px 0 0; font-size:clamp(2.4rem,5vw,5rem); letter-spacing:-.06em; line-height:.95; }
.modal-kicker { color:var(--orange); font-size:.7rem; font-weight:900; letter-spacing:.12em; }
.portfolio-modal .modal-body { padding:0 34px 42px; }
.case-hero { border-radius:20px; overflow:hidden; background:var(--paper); }.case-image-hero { max-height:650px; }.case-image-hero img { width:100%; height:100%; max-height:650px; object-fit:cover; object-position:top; display:block; }
.case-grid { padding-top:40px; }.case-grid h3 { font-size:clamp(2rem,4vw,3.8rem); letter-spacing:-.055em; line-height:1; margin-bottom:22px; }.case-grid p { color:var(--muted); line-height:1.72; font-size:1rem; }.case-facts { border-top:1px solid var(--line); }.case-facts > div { padding:16px 0; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; gap:20px; }.case-facts span { color:var(--muted-2); font-size:.76rem; text-transform:uppercase; letter-spacing:.08em; }.case-facts strong { text-align:right; max-width:65%; font-size:.9rem; }
.case-gallery { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }.case-shot { margin:0; background:var(--paper); border-radius:18px; overflow:hidden; border:1px solid var(--line); }.case-shot-wide { grid-column:span 2; }.case-shot img { width:100%; display:block; object-fit:cover; object-position:top; }.case-shot figcaption { padding:12px 14px; color:var(--muted); font-size:.75rem; }
.seo-proof-note { display:flex; gap:20px; padding:18px; background:var(--paper); border:1px solid var(--line); border-radius:16px; margin-top:32px; }.seo-proof-note strong { white-space:nowrap; }.seo-proof-note span { color:var(--muted); line-height:1.55; font-size:.82rem; }
.seo-metric-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.seo-metric-grid article { padding:18px; background:var(--navy); color:white; border-radius:15px; }.seo-metric-grid span { display:block; color:rgba(255,255,255,.5); font-size:.72rem; }.seo-metric-grid strong { display:block; margin:6px 0; font-size:1.45rem; }.seo-metric-grid small { color:rgba(255,255,255,.58); }
.modal-video-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.modal-video-card { margin:0; }.modal-video-card video { width:100%; aspect-ratio:9/14; object-fit:cover; border-radius:16px; background:#111; }.modal-video-card strong { display:block; margin-top:8px; font-size:.8rem; }
.project-proof-inline { color:var(--orange); font-size:.76rem; font-weight:800; }
.project-live-link { font-size:.76rem; font-weight:800; }
.btn-main { display:inline-flex; align-items:center; gap:10px; border-radius:999px; background:var(--ink); color:white; padding:12px 18px; font-weight:800; font-size:.85rem; }.btn-main:hover { background:var(--orange); color:white; }

/* Toast */
.portfolio-toast { position:fixed; left:50%; bottom:28px; transform:translate(-50%,18px); opacity:0; pointer-events:none; background:var(--ink); color:white; border-radius:999px; padding:11px 16px; font-size:.8rem; z-index:2000; transition:.25s ease; }.portfolio-toast.show { opacity:1; transform:translate(-50%,0); }

/* Reveal */
.reveal { opacity:0; transform:translateY(22px); transition:opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1); }.reveal.is-visible { opacity:1; transform:none; }.delay-1 { transition-delay:.1s; }.delay-2 { transition-delay:.2s; }

@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.triad-image,.work-media img{transition:none} }

@media (max-width: 1199px) {
  .site-shell { padding-inline:28px; }
  .hero-layout { grid-template-columns:1fr; gap:34px; }.hero-intro { max-width:660px; }.hero-triad { grid-template-columns:1fr; }.triad-card { border-right:0; border-bottom:1px solid var(--line); min-height:320px; }.triad-card:last-child { border-bottom:0; }.triad-image { max-width:520px; }
  .proof-grid { grid-template-columns:repeat(3,1fr); }.proof-grid > div:nth-child(3){border-right:0}.proof-grid > div:nth-child(n+4){border-top:1px solid var(--line-dark)}
  .section-heading,.creative-head { grid-template-columns:130px 1fr; }.section-heading > p,.creative-head > p { grid-column:2; max-width:650px; }
  .editorial-work-grid { grid-template-columns:1fr; }.work-card-xl { grid-row:auto; }.work-card-xl .work-media { aspect-ratio:16/10; }
  .growth-shell { grid-template-columns:1fr; }.growth-copy { max-width:760px; }
  .capability-row { grid-template-columns:60px 1fr 1fr; }.cap-tags { grid-column:2/4; }
  .experience-grid { grid-template-columns:1fr; }.experience-aside { display:grid; grid-template-columns:repeat(3,1fr); }
}

@media (max-width: 991px) {
  .portfolio-nav .navbar-collapse { background:var(--paper); border:1px solid var(--line); padding:18px; border-radius:18px; margin-top:12px; box-shadow:var(--shadow); }.nav-contact { margin-left:0; margin-top:10px; }
  .hero-editorial { padding-top:120px; }.hero-heading h1 { font-size:clamp(4rem,14vw,7rem); }
  .proof-grid { grid-template-columns:repeat(2,1fr); }.proof-grid > div { border-top:1px solid var(--line-dark); }.proof-grid > div:nth-child(odd){padding-left:0}.proof-grid > div:nth-child(even){border-right:0}.proof-grid > div:first-child,.proof-grid > div:nth-child(2){border-top:0}
  .section-editorial { padding:110px 0; }.section-heading { grid-template-columns:1fr; gap:20px; }.section-heading > p { grid-column:auto; }
  .work-copy { grid-template-columns:1fr; gap:10px; }.work-copy > div { align-items:center; }
  .more-work { grid-template-columns:1fr; }.more-work-cards { grid-template-columns:1fr 1fr; }
  .creative-head { grid-template-columns:1fr; gap:18px; }.creative-head > p { grid-column:auto; }.malo-card { grid-template-columns:1fr; }.malo-card > img { max-height:460px; }.video-grid { grid-template-columns:repeat(2,1fr); }
  .recommendation-title { display:block; }.recommendation-title h2 { margin-top:16px; }.recommendation-grid { grid-template-columns:1fr; }
  .contact-grid { grid-template-columns:1fr; gap:40px; }
  .case-gallery { grid-template-columns:1fr; }.case-shot-wide { grid-column:auto; }.seo-metric-grid { grid-template-columns:repeat(2,1fr); }.modal-video-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 767px) {
  .site-shell { padding-inline:18px; }.hero-topline { align-items:flex-start; }.hero-location { display:none; }.hero-layout { padding:52px 0; }.hero-heading h1 { font-size:clamp(3.5rem,16vw,5.7rem); }.hero-intro p { font-size:1rem; }.triad-card { padding:24px 18px; }.triad-card h2 { font-size:2.7rem; }.triad-image { height:100px; }
  .proof-grid { grid-template-columns:1fr; }.proof-grid > div { border-right:0; border-top:1px solid var(--line-dark); padding:14px 0; }.proof-grid > div:first-child { border-top:0; }.proof-grid > div:nth-child(2){border-top:1px solid var(--line-dark)}
  .section-editorial { padding:88px 0; }.section-heading h2,.creative-head h2,.growth-copy h2,.contact-grid h2 { font-size:clamp(3.1rem,14vw,5rem); }
  .work-media,.work-card-xl .work-media { aspect-ratio:4/3; border-radius:18px; }.more-work-cards { grid-template-columns:1fr; }
  .growth-section { padding:90px 0; }.growth-metrics { grid-template-columns:1fr; }.growth-visual { padding:8px; }
  .capability-row { grid-template-columns:42px 1fr; gap:18px; }.capability-row > p,.cap-tags { grid-column:2; }.cap-name h3 { font-size:1.7rem; }
  .creative-section { padding:90px 0; }.malo-card > div { padding:28px 22px; }.malo-card h3 { font-size:2.6rem; }.video-grid { grid-template-columns:1fr; }.video-frame { aspect-ratio:9/12; }
  .experience-item { grid-template-columns:1fr; gap:8px; }.experience-aside { grid-template-columns:1fr; }
  .recommendation-band { padding:80px 0; }.contact-editorial { padding:90px 0; }.contact-links .primary-contact { font-size:1rem; word-break:break-word; }
  .footer-line { flex-direction:column; align-items:flex-start; }
  .portfolio-modal .modal-header { padding:22px 18px 14px; }.portfolio-modal .modal-body { padding:0 18px 24px; }.case-grid { padding-top:28px; }.case-facts > div { flex-direction:column; gap:6px; }.case-facts strong { max-width:100%; text-align:left; }.seo-proof-note { flex-direction:column; }.seo-metric-grid,.modal-video-grid { grid-template-columns:1fr; }
}
