/* Client revision: photographic cover and selected Instagram projects. */
.hero{position:relative;isolation:isolate;display:block;width:100%;max-width:none;margin:0;padding:0;background:#192734;color:white}
.hero-photo{position:absolute;inset:0;z-index:-2;margin:0;background:#192734}
.hero-photo img{width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 44%}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,18,29,.88) 0%,rgba(8,18,29,.64) 43%,rgba(8,18,29,.12) 100%),linear-gradient(0deg,rgba(8,18,29,.55),transparent 40%)}
.hero-content{min-height:650px;min-height:clamp(650px,calc(100svh - 112px),820px);display:flex;flex-direction:column;justify-content:space-between;padding-top:76px;padding-bottom:28px}
.hero-copy{display:block;padding:0;max-width:870px}
.hero-copy .eyebrow{color:#e7efff;letter-spacing:.13em}
.hero h1{font-size:clamp(4.6rem,8.5vw,8.2rem);line-height:.97;margin:48px 0 30px;letter-spacing:-.065em;text-wrap:balance;font-weight:450}
.hero h1 em{color:var(--accent-blue);font-size:1.12em}
.hero-description{font-size:1rem;color:#f3f5f8;line-height:1.7}
.hero-actions{flex-direction:row;align-items:center;gap:28px;flex-wrap:wrap;margin-top:34px}
.hero-actions .button{background:var(--blue);border-color:var(--blue);color:white;gap:28px;font-weight:600}
.hero-actions .button:hover{background:#183b9e;border-color:#183b9e;color:white}
.hero-actions .text-link{color:white;font-weight:500}
.hero-foot{margin-top:54px;border-color:#ffffff40;padding:22px 0 0;color:#f0f3f7;align-items:center}
.hero-foot a{display:inline-flex;align-items:center;gap:20px}
.hero-foot>span:first-child{letter-spacing:.12em}
.catalog-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;padding-left:4px;border-radius:50%;border:1px solid #ffffffa0;background:#0c1a33aa;color:white;font-size:1.125rem;backdrop-filter:blur(6px);transition:background .2s}
.catalog-open:hover .catalog-play{background:var(--blue)}
.catalog-description{font-size:.875rem;line-height:1.7;color:#526078;margin-top:16px}
.catalog-card-body{display:flex;flex-direction:column;flex:1}
.catalog-card{display:flex;flex-direction:column;scroll-margin-top:120px}
.catalog-card .catalog-open{flex:none}
.catalog-card-actions{margin-top:auto;padding-top:22px;align-items:flex-start;flex-direction:column;gap:7px}
.catalog-card-actions>a{min-height:44px;display:inline-flex;align-items:center}
.catalog-card-actions .catalog-video{color:var(--ink);font-weight:500;border-bottom:1px solid var(--line)}
.catalog-category{text-transform:none;letter-spacing:.01em;color:#526078}
.catalog-card.is-referenced{outline:3px solid var(--blue);outline-offset:5px}
.service-list h3{line-height:1.3}.service-number{flex:none}
@media(max-width:1100px){.hero-content{padding-top:56px}.hero h1{font-size:clamp(4.4rem,9vw,6.6rem)}}
@media(max-width:1000px){.hero{padding:0;display:block}.hero-content{min-height:680px}.hero-photo img{height:100%;object-position:57% 43%}.hero h1{font-size:clamp(4rem,9.6vw,6rem)}.quote-intro{position:static}}
@media(max-width:700px){
  .hero-content{min-height:690px;min-height:calc(100svh - 88px);padding-top:48px;padding-bottom:25px}
  .hero::after{background:linear-gradient(90deg,#091423d9,#09142366),linear-gradient(0deg,#091423cc,transparent 75%)}
  .hero-photo img{height:100%;aspect-ratio:auto;object-position:59% 43%}
  .hero h1{font-size:clamp(3.5rem,14.2vw,5.7rem);line-height:1.02;margin:40px 0 26px;max-width:540px}
  .hero .eyebrow{font-size:.6875rem;letter-spacing:.1em;max-width:310px}
  .hero-copy{padding:0}.hero-description{font-size:.9375rem}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:30px}
  .hero-actions .button{width:auto;max-width:100%;min-height:56px;padding-inline:22px;font-size:.875rem;gap:24px}
  .hero-foot{margin-top:42px;font-size:.6875rem;padding-top:20px;gap:18px}
  .hero-foot>span:first-child{font-size:.625rem;letter-spacing:.06em}.hero-foot a{gap:8px}
  .catalog-card-actions{gap:8px}.catalog-open img{aspect-ratio:4/5;object-position:center 44%}
  .service-list h3{font-size:1.125rem}.service-list summary{gap:15px}
}
@media(max-width:360px){.hero-content{padding-top:36px}.hero h1{font-size:3.25rem;margin-top:30px}.hero-foot{flex-direction:column;align-items:flex-start}.hero-actions .button{padding-inline:18px}.hero-content{min-height:690px}}
@media(prefers-reduced-motion:reduce){.catalog-play{transition:none}}

/* Final content cleanup requested in browser comments. */
.intro,.process{grid-template-columns:minmax(0,1fr)}
.intro>div{max-width:1000px}.process>div{max-width:1100px}
.section-heading h2,.work-heading h2,.contact h2{margin-top:0}
.whatsapp-logo{width:26px;height:26px;flex:none;filter:brightness(0) invert(1)}
.footer{flex-wrap:wrap}
.developer-credit{flex-basis:100%;font-size:.75rem;color:var(--muted);padding-top:18px;border-top:1px solid var(--line);line-height:1.8}
.developer-credit strong{font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.developer-credit:hover strong{color:var(--blue)}
@media(max-width:700px){.developer-credit{align-self:stretch;flex-basis:auto;padding-top:20px}}

/* Supplied panoramic cover: preserve the car and embedded brand mark. */
.hero,.hero-photo{background:#101923}
.hero-photo img{object-position:65% 35%}
.hero::after{background:linear-gradient(90deg,#07111ed9 0%,#07111e99 44%,#07111e0a 80%),linear-gradient(0deg,#07111eb3,transparent 45%)}
.hero-content{min-height:clamp(600px,56.25vw,820px)}
@media(min-width:701px) and (max-width:1000px){.hero-photo img{object-position:100% 35%}.hero-content{min-height:640px}.hero h1{max-width:60%}}
@media(max-width:700px){
  .hero-photo img{height:auto;width:100%;aspect-ratio:16/9;object-fit:contain;object-position:center top}
  .hero::after{background:linear-gradient(to bottom,transparent calc(56.25vw - 34px),#101923 calc(56.25vw + 4px))}
  .hero-content{min-height:0;padding-top:calc(56.25vw + 24px);padding-bottom:24px}
  .hero h1{font-size:clamp(3rem,12.4vw,4.8rem);line-height:1.02;margin:24px 0 20px}
  .hero-actions{margin-top:24px;gap:18px}.hero-foot{margin-top:32px;padding-top:18px}
}

.footer-social{display:flex;align-items:center;gap:10px}
.footer-social a{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:white;transition:background .2s,border-color .2s}
.footer-social img{width:22px;height:22px;flex:none}
.footer-social a:hover{background:var(--light-blue);border-color:var(--blue)}

/* Graphite surfaces requested by the client; keep photography and controls clear. */
:root{--graphite:#303234;--header-background:#202224;--graphite-line:#64676b;--graphite-text:#f5f5f4;--graphite-muted:#d0d2d4}
.header{width:100%;max-width:none;margin:0;padding-inline:max(56px,calc((100% - 1376px)/2));background:var(--header-background);color:var(--graphite-text);border-color:#44474a;box-shadow:none}
.header .brand-description{border-color:var(--graphite-line)}
.header nav a::after{background:var(--graphite-text)}
.header .nav-contact{background:var(--graphite-text);color:#202224}
.header .nav-contact:hover{background:#dadddf}
.work{background:var(--graphite);color:var(--graphite-text)}
.work .catalog-intro .text-link{color:var(--graphite-text)}
.work .catalog-toolbar,.work .catalog-end{border-color:var(--graphite-line)}
.work #catalog-count{color:var(--graphite-muted)}
.work .filter{border-color:var(--graphite-line);color:var(--graphite-text)}
.work .filter:hover{background:#44474a}
.work .filter.is-active{background:var(--graphite-text);border-color:var(--graphite-text);color:#202224}
.work .catalog-card{color:var(--ink)}
.work .catalog-card.is-referenced{outline-color:#a8c2ff}
.work :focus-visible,.header :focus-visible{outline-color:#a8c2ff}
.quote-callout{background:#08090a;color:white}
.hero,.hero-photo{background:#141719}
.hero-photo img{object-position:center 35%}
.hero::after{background:linear-gradient(90deg,#0c1014d9 0%,#0c101499 44%,#0c101400 80%),linear-gradient(0deg,#0c1014a6,transparent 45%)}
@media(min-width:1001px) and (max-width:1100px){.header{padding-inline:32px}}
@media(max-width:1000px){
  .header{padding-inline:28px;box-shadow:none}
  .menu-toggle{background:var(--header-background);color:var(--graphite-text);border-color:var(--graphite-line)}
  .header nav{background:var(--header-background);color:var(--graphite-text);border-color:var(--graphite-line)}
  .header nav>a{border-color:var(--graphite-line)}
  .header nav .nav-contact{background:var(--graphite-text);color:#202224}
  .menu-backdrop{background:#08090a99}
}
@media(max-width:700px){
  .header{padding-inline:20px;box-shadow:none}
  .hero::after{background:linear-gradient(to bottom,transparent calc(56.25vw - 34px),#141719 calc(56.25vw + 4px))}
}
