:root {
  --ink: #061019;
  --ink-2: #08131c;
  --ink-3: #0b151e;
  --yellow: #ffc400;
  --yellow-2: #f5b900;
  --white: #fff;
  --muted: #d4d8dc;
  --line: rgba(255,255,255,.12);
  --max: 1480px;
  font-family: "Arial Narrow", "Roboto Condensed", "Segoe UI", Arial, sans-serif;
  color-scheme: dark;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 90px; }
body { margin: 0; background: var(--ink); color: var(--white); min-width: 320px; overflow-x: hidden; }
body.intro-active { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 999; background: var(--yellow); color: var(--ink); padding: .8rem 1rem; font-weight: 900; }
.skip-link:focus { top: 1rem; }

.site-header { height: 112px; position: relative; z-index: 50; background: rgba(5,14,22,.99); border-bottom: 1px solid rgba(255,196,0,.18); animation: enter .55s ease both; }
.header-inner { width: min(var(--max), calc(100% - 48px)); height: 100%; margin: auto; display: grid; grid-template-columns: 330px 1fr auto; align-items: stretch; gap: 24px; }
.brand { display: flex; flex-direction: column; justify-content: center; line-height: 1; min-width: 210px; }
.brand-mark { position: relative; display: flex; align-items: baseline; width: max-content; font-size: 3.05rem; font-weight: 950; font-style: italic; letter-spacing: -.08em; color: #dfe3e6; text-shadow: 0 1px 0 #fff, 0 -1px 0 #60676c; }
.brand-mark strong { font-size: 1.35em; color: var(--yellow); letter-spacing: -.16em; text-shadow: none; }
.brand-dot { color: var(--yellow); margin: 0 .11em 0 -.02em; }
.brand-mark i { display: block; width: 18px; height: 28px; margin-left: 7px; border: 3px solid var(--yellow); border-top: 0; transform: skew(-10deg); }
.brand-mark i::after { content: ""; display: block; width: 8px; height: 8px; border: 3px solid var(--yellow); border-left: 0; border-top: 0; transform: rotate(45deg); margin: 21px 0 0 6px; }
.brand-sub { margin: 2px 0 0 42px; font-size: .75rem; font-weight: 900; font-style: italic; letter-spacing: .22em; color: #e7e9ea; }

.site-nav { display: flex; align-items: stretch; justify-content: center; gap: clamp(18px, 2vw, 40px); }
.site-nav a { position: relative; display: grid; place-items: center; color: #d8dde0; font-size: .78rem; font-weight: 800; letter-spacing: .08em; white-space: nowrap; transition: color .2s ease; }
.site-nav a:hover, .site-nav a:focus-visible, .site-nav a.active { color: var(--yellow); }
.site-nav a.active::after { content: ""; position: absolute; left: 50%; bottom: 24px; width: 68px; height: 2px; background: var(--yellow); transform: translateX(-50%) skewX(-18deg); }
.header-contact { display: flex; align-items: center; gap: 18px; }
.phone-number { display: flex; align-items: center; gap: 9px; font-weight: 900; font-size: 1.03rem; white-space: nowrap; }
.phone-number svg { width: 20px; color: var(--yellow); }
.call-cta, .primary-btn { display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 23px; background: var(--yellow); color: #071019; font-size: .8rem; font-weight: 950; letter-spacing: .08em; clip-path: polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px); transition: background .2s ease, transform .2s ease; }
.call-cta:hover, .primary-btn:hover { background: #ffd42f; transform: translateY(-2px); }
.call-cta span, .primary-btn span, .text-link span { margin-left: 12px; font-size: 1.55em; line-height: 0; }
.menu-toggle { display: none; }

.hero { min-height: 410px; height: 410px; position: relative; isolation: isolate; overflow: hidden; background: #09131b; }
.hero-media { position: absolute; inset: 0; z-index: -3; background: url("ytek-hero.jpg") center center / cover no-repeat; transform: scale(1.005); }
.hero-overlay { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(3,10,16,.98) 0%, rgba(3,10,16,.82) 24%, rgba(3,10,16,.3) 51%, rgba(3,10,16,.04) 78%), linear-gradient(0deg, rgba(3,10,16,.5), transparent 35%); }
.hero-content { width: min(var(--max), calc(100% - 48px)); margin: 0 auto; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 18px 0 12px; animation: rise .7s .1s ease both; }
.eyebrow, .section-kicker { margin: 0 0 14px; color: var(--yellow); font-size: .74rem; font-weight: 900; letter-spacing: .26em; }
.hero h1 { margin: 0; max-width: 540px; color: var(--yellow); font-size: clamp(1.5rem, 2vw, 2.05rem); line-height: 1; letter-spacing: -.025em; font-weight: 950; text-shadow: 0 5px 24px rgba(0,0,0,.25); }
.hero h1 br { display: none; }
.hero h1::after { display: none; }
.hero-brand { display: flex; flex-direction: column; margin: 2px 0 10px; line-height: .9; font-style: italic; font-weight: 950; color: #e5e8ea; }
.hero-brand-main { position: relative; display: flex; align-items: baseline; width: max-content; font-size: clamp(4.2rem, 6.3vw, 6.8rem); letter-spacing: -.08em; color: #e5e8ea; text-shadow: 0 2px 0 #fff,0 -2px 0 #6a7177,0 8px 22px rgba(0,0,0,.45); }
.hero-brand-main strong, .hero-brand-main i { color: var(--yellow); text-shadow: none; }
.hero-brand-main strong { font-size: 1.16em; }
.hero-brand-main i { font-style: normal; margin: 0 .06em; }
.hero-brand-main b { width: 18px; height: 54px; margin-left: 14px; border: 4px solid var(--yellow); border-top: 0; transform: skew(-8deg); }
.hero-brand-main b::after { content: ""; display: block; width: 10px; height: 10px; margin: 45px 0 0 7px; border: 4px solid var(--yellow); border-left: 0; border-top: 0; transform: rotate(45deg); }
.hero-brand-sub { width: max-content; margin: -8px 0 0 54px; padding: 5px 10px 4px; border-bottom: 2px solid var(--yellow); color: #fff; font-size: 1rem; letter-spacing: .11em; }
.hero-copy { margin: 7px 0 18px; color: var(--muted); font-size: .98rem; line-height: 1.45; font-weight: 500; }
.hero-edge { position: absolute; right: 0; bottom: 0; width: 220px; height: 52px; display: grid; place-items: center; background: var(--yellow); color: var(--ink); clip-path: polygon(30px 0,100% 0,100% 100%,0 100%); font-weight: 950; letter-spacing: .23em; }

.services { background: var(--ink-2); border-top: 1px solid rgba(255,196,0,.25); border-bottom: 1px solid var(--line); }
.services-grid { max-width: var(--max); margin: auto; display: grid; grid-template-columns: repeat(5,1fr); }
.service-item { position: relative; min-height: 205px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 22px clamp(18px,2vw,35px); text-align: center; }
.service-item + .service-item::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 106px; background: linear-gradient(transparent,var(--line),transparent); transform: translateY(-50%); }
.service-icon { width: 54px; height: 54px; margin-bottom: 12px; color: var(--yellow); stroke-width: 1.7; transition: transform .22s ease, filter .22s ease; }
.service-item:hover .service-icon { transform: translateY(-5px); filter: drop-shadow(0 0 8px rgba(255,196,0,.3)); }
.service-item h2 { margin: 0 0 10px; font-size: .98rem; letter-spacing: .07em; font-weight: 950; }
.service-item p { max-width: 220px; margin: 0; color: #c7cdd1; font-family: "Segoe UI",Arial,sans-serif; font-size: .82rem; line-height: 1.45; }

.showcase { min-height: 186px; display: grid; grid-template-columns: minmax(320px,30fr) minmax(390px,30fr) minmax(500px,40fr); background: #050c12; }
.showcase-photo { min-height: 186px; background: linear-gradient(90deg,transparent 86%,#050c12), url("ytek-hero.jpg") 57% center / cover no-repeat; filter: saturate(.9) contrast(1.06); }
.showcase-copy { position: relative; display: flex; flex-direction: column; justify-content: center; padding: 23px clamp(32px,3vw,58px); }
.slanted-line { position: absolute; left: 14px; top: 18%; width: 5px; height: 64%; background: var(--yellow); transform: skewX(-9deg); }
.showcase-copy h2 { margin: 0 0 10px; font-size: clamp(1.25rem,1.55vw,1.75rem); line-height: 1.05; letter-spacing: -.02em; font-weight: 950; }
.showcase-copy h2 span { color: var(--yellow); }
.showcase-copy > p:last-of-type { max-width: 580px; margin: 0; color: #d0d5d8; font-family: "Segoe UI",Arial,sans-serif; font-size: .82rem; line-height: 1.48; }
.showcase-copy .section-kicker, .showcase-copy .text-link { display: none; }
.text-link { width: max-content; color: var(--yellow); font-size: .77rem; font-weight: 950; letter-spacing: .13em; border-bottom: 1px solid rgba(255,196,0,.45); padding-bottom: 6px; }
.gallery-grid { display: grid; grid-template-columns: repeat(4,1fr); min-width: 0; overflow: hidden; background: url("ytek-gallery.jpg") center/cover no-repeat; }
.gallery-card { position: relative; min-width: 0; min-height: 186px; margin: 0; overflow: hidden; background-image: url("ytek-gallery.jpg"); background-size: 400% 100%; background-repeat: no-repeat; border: 9px solid #050c12; border-width: 10px 5px; transition: flex .3s ease, filter .25s ease; filter: saturate(.88) brightness(.88); }
.gallery-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg,rgba(3,9,14,.78),transparent 46%); }
.gallery-card:hover { filter: saturate(1.05) brightness(1.04); }
.gallery-1 { background-position: 0 50%; }
.gallery-2 { background-position: 33.333% 50%; }
.gallery-3 { background-position: 66.667% 50%; }
.gallery-4 { background-position: 100% 50%; }
.gallery-card figcaption { position: absolute; z-index: 2; left: 18px; bottom: 20px; font-size: .76rem; font-weight: 950; letter-spacing: .12em; }

.footer { background: #08131c; border-top: 1px solid rgba(255,196,0,.25); }
.footer-inner { min-height: 100px; max-width: var(--max); margin: auto; display: grid; grid-template-columns: 1.4fr 1fr auto 1fr; align-items: center; gap: clamp(28px,4vw,72px); padding: 16px 24px; }
.contact-block { display: flex; align-items: center; gap: 17px; min-width: 0; }
.contact-block svg { flex: 0 0 auto; width: 29px; height: 29px; color: var(--yellow); }
.contact-block div { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.contact-block strong { font-size: .95rem; letter-spacing: .035em; }
.contact-block span { color: #9ea7ad; font-size: .8rem; letter-spacing: .05em; }
.socials { display: flex; align-items: center; gap: 10px; }
.socials a { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #293743; color: #d5dade; transition: color .2s,border-color .2s,transform .2s; }
.socials a:hover { color: var(--yellow); border-color: var(--yellow); transform: translateY(-2px); }
.socials svg { width: 18px; height: 18px; }
.signature { justify-self: end; display: flex; flex-direction: column; align-items: center; color: var(--yellow); }
.signature strong { font-family: "Segoe Script","Brush Script MT",cursive; font-size: clamp(1.35rem,2vw,2rem); font-weight: 500; transform: rotate(-3deg); white-space: nowrap; }
.signature span { width: 90%; height: 9px; margin-top: 6px; border-top: 2px solid var(--yellow); border-radius: 50%; transform: skewX(-20deg) rotate(-2deg); }
.footer-credit { padding: 6px 24px 8px; color: #7f8991; border-top: 1px solid #14212b; text-align: center; font-size: .68rem; letter-spacing: .08em; }
.footer-credit a { color: var(--yellow); }
.mobile-actions { display: none; }

.intro-loader { position: fixed; inset: 0; z-index: 1000; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #040c13; transition: opacity .45s ease, visibility .45s ease; }
.intro-loader::before, .intro-loader::after { content: ""; position: absolute; width: 34vw; height: 1px; background: linear-gradient(90deg,transparent,rgba(255,196,0,.45),transparent); }
.intro-loader::before { top: 31%; left: -4%; transform: rotate(-10deg); }
.intro-loader::after { right: -4%; bottom: 31%; transform: rotate(-10deg); }
.intro-logo { font-size: clamp(4rem,9vw,8rem); line-height: .9; font-style: italic; font-weight: 950; letter-spacing: -.08em; color: #dfe3e6; text-shadow: 0 2px 0 #fff,0 -2px 0 #5d666d; animation: introLogo .75s cubic-bezier(.2,.75,.25,1) both; }
.intro-logo strong, .intro-logo span { color: var(--yellow); text-shadow: none; }
.intro-logo strong { font-size: 1.18em; }
.intro-line { width: min(380px,68vw); height: 3px; margin-top: 22px; background: #15232d; overflow: hidden; transform: skewX(-20deg); }
.intro-line i { display: block; width: 100%; height: 100%; background: var(--yellow); transform-origin: left; animation: introLine 1s .12s ease both; }
.intro-loader p { margin: 13px 0 0; color: #c7cdd1; font-size: .72rem; font-weight: 900; letter-spacing: .38em; animation: introText .6s .3s ease both; }
body.intro-done .intro-loader { opacity: 0; visibility: hidden; pointer-events: none; }

.section-shell { width: min(1380px,calc(100% - 48px)); margin: 0 auto; }
.service-details { padding: 100px 0 110px; background: #0a151e; border-top: 1px solid rgba(255,196,0,.16); }
.section-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 70px; margin-bottom: 50px; }
.section-heading h2, .why-content h2, .process-heading h2, .long-cta h2 { margin: 0; font-size: clamp(2.5rem,4vw,4.9rem); line-height: .95; letter-spacing: -.035em; font-weight: 950; }
.section-heading h2 span, .why-content h2 span, .process-heading h2 span, .long-cta h2 span { color: var(--yellow); }
.section-heading > p { max-width: 590px; margin: 0 0 4px; color: #aeb7bd; font-family: "Segoe UI",Arial,sans-serif; font-size: 1rem; line-height: 1.75; }
.detail-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 1px; background: #22313c; border: 1px solid #22313c; }
.detail-card { position: relative; grid-column: span 2; min-height: 300px; display: flex; flex-direction: column; padding: 38px 34px 34px; overflow: hidden; background: #07111a; transition: background .25s ease, transform .25s ease; }
.detail-card:nth-child(4) { grid-column: span 3; }
.detail-card-wide { grid-column: span 3; }
.detail-card::after { content: ""; position: absolute; left: 0; bottom: 0; width: 0; height: 4px; background: var(--yellow); transition: width .3s ease; }
.detail-card:hover { z-index: 2; background: #0d1b25; transform: translateY(-4px); }
.detail-card:hover::after { width: 100%; }
.detail-number { position: absolute; right: 24px; top: 18px; color: rgba(255,196,0,.11); font-size: 4.7rem; line-height: 1; font-weight: 950; }
.detail-card h3 { position: relative; margin: 52px 0 16px; font-size: 1.28rem; letter-spacing: .06em; }
.detail-card p { position: relative; max-width: 470px; margin: 0 0 28px; color: #aeb7bd; font-family: "Segoe UI",Arial,sans-serif; font-size: .94rem; line-height: 1.68; }
.detail-card a { position: relative; width: max-content; margin-top: auto; color: var(--yellow); font-size: .74rem; font-weight: 950; letter-spacing: .13em; }
.detail-card a span { margin-left: 8px; font-size: 1.35em; }

.why-us { min-height: 650px; display: grid; grid-template-columns: 1.05fr .95fr; background: #040b11; }
.why-visual { min-height: 650px; background: linear-gradient(90deg,transparent 65%,#040b11 100%),url("ytek-gallery.jpg") 4% center/400% 100% no-repeat; }
.why-content { display: flex; flex-direction: column; justify-content: center; padding: 78px clamp(48px,7vw,130px) 78px clamp(42px,5vw,90px); }
.why-content > p:not(.eyebrow) { max-width: 620px; margin: 26px 0 34px; color: #aeb7bd; font-family: "Segoe UI",Arial,sans-serif; line-height: 1.75; }
.why-list { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 28px; margin: 0; padding: 0; list-style: none; }
.why-list li { position: relative; padding: 0 0 0 20px; }
.why-list li::before { content: ""; position: absolute; left: 0; top: 6px; width: 5px; height: 38px; background: var(--yellow); transform: skewX(-10deg); }
.why-list strong, .why-list span { display: block; }
.why-list strong { margin-bottom: 7px; font-size: .9rem; letter-spacing: .05em; }
.why-list span { color: #8f9aa2; font-family: "Segoe UI",Arial,sans-serif; font-size: .82rem; line-height: 1.5; }

.process { padding: 100px 0 110px; background: #09141d; border-top: 1px solid #192731; }
.process-heading { margin-bottom: 48px; }
.process-heading h2 { font-size: clamp(2.4rem,3.5vw,4rem); }
.process-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid #2a3944; border-bottom: 1px solid #2a3944; }
.process-grid li { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 25px; min-height: 210px; padding: 42px 38px; }
.process-grid li + li { border-left: 1px solid #2a3944; }
.process-grid > li > span { color: var(--yellow); font-size: 2.7rem; line-height: 1; font-weight: 950; opacity: .9; }
.process-grid h3 { margin: 3px 0 13px; font-size: 1rem; letter-spacing: .08em; }
.process-grid p { margin: 0; color: #9ca7ae; font-family: "Segoe UI",Arial,sans-serif; font-size: .9rem; line-height: 1.65; }

.long-cta { position: relative; min-height: 560px; display: grid; place-items: center; isolation: isolate; overflow: hidden; background: url("ytek-hero.jpg") center 48%/cover no-repeat; text-align: center; }
.long-cta-overlay { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(3,10,16,.9),rgba(3,10,16,.64),rgba(3,10,16,.9)),linear-gradient(0deg,rgba(3,10,16,.78),transparent 55%); }
.long-cta-content { width: min(830px,calc(100% - 40px)); padding: 80px 0; }
.long-cta .eyebrow { margin-bottom: 18px; }
.long-cta h2 { font-size: clamp(3rem,5vw,5.8rem); }
.long-cta-content > p:not(.eyebrow) { max-width: 650px; margin: 25px auto 30px; color: #d1d6d9; font-family: "Segoe UI",Arial,sans-serif; font-size: 1rem; line-height: 1.7; }
.long-cta-actions { display: flex; justify-content: center; gap: 13px; }
.outline-btn { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 0 24px; border: 1px solid rgba(255,255,255,.5); color: #fff; font-size: .78rem; font-weight: 950; letter-spacing: .08em; transition: border-color .2s,color .2s,transform .2s; }
.outline-btn:hover { color: var(--yellow); border-color: var(--yellow); transform: translateY(-2px); }

.reveal-ready { opacity: 0; transform: translateY(28px); transition: opacity .65s ease,transform .65s ease; }
.reveal-ready.is-visible { opacity: 1; transform: none; }

@keyframes enter { from { opacity: 0; transform: translateY(-12px); } }
@keyframes rise { from { opacity: 0; transform: translateY(18px); } }
@keyframes introLogo { from { opacity: 0; transform: scale(.84) translateY(14px); filter: blur(4px); } to { opacity: 1; transform: none; filter: none; } }
@keyframes introLine { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes introText { from { opacity: 0; letter-spacing: .55em; } to { opacity: 1; letter-spacing: .38em; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *,*::before,*::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

@media (max-width: 1260px) {
  .header-inner { width: min(var(--max),calc(100% - 30px)); grid-template-columns: 230px 1fr auto; gap: 14px; }
  .brand-mark { font-size: 2rem; }
  .brand-sub { font-size: .58rem; }
  .site-nav { gap: 17px; }
  .site-nav a { font-size: .69rem; }
  .phone-number span { display: none; }
  .showcase { grid-template-columns: .9fr 1fr 1.25fr; }
  .showcase-copy { padding-inline: 40px; }
}

@media (max-width: 980px) {
  html { scroll-padding-top: 76px; }
  .site-header { height: 76px; position: sticky; top: 0; }
  .header-inner { grid-template-columns: 1fr auto; }
  .brand-mark { font-size: 1.75rem; }
  .brand-sub { margin-left: 21px; font-size: .5rem; }
  .header-contact { display: none; }
  .menu-toggle { width: 45px; height: 45px; align-self: center; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: 10px; background: transparent; border: 1px solid #25343f; color: var(--white); }
  .menu-toggle span { display: block; width: 100%; height: 2px; background: var(--yellow); transition: transform .2s,opacity .2s; }
  .menu-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
  .site-nav { position: absolute; left: 0; right: 0; top: 76px; display: grid; grid-template-columns: 1fr; gap: 0; padding: 8px 24px 18px; background: rgba(5,14,22,.99); border-bottom: 2px solid var(--yellow); transform: translateY(-130%); visibility: hidden; opacity: 0; transition: .22s ease; }
  .site-nav.open { transform: translateY(0); visibility: visible; opacity: 1; }
  .site-nav a { min-height: 48px; justify-content: start; border-bottom: 1px solid #15232e; font-size: .76rem; }
  .site-nav a.active::after { left: 0; bottom: 8px; transform: none; }
  .hero { min-height: 600px; height: 72vw; }
  .hero-content { width: calc(100% - 40px); }
  .hero-media { background-position: 58% center; }
  .services-grid { grid-template-columns: repeat(2,1fr); }
  .service-item { min-height: 230px; border-bottom: 1px solid var(--line); }
  .service-item + .service-item::before { display: none; }
  .service-item:nth-child(odd) { border-right: 1px solid var(--line); }
  .service-item:last-child { grid-column: 1 / -1; border-right: 0; }
  .showcase { grid-template-columns: 1fr 1fr; }
  .showcase-photo { min-height: 360px; }
  .showcase-copy { min-height: 360px; }
  .showcase-copy .section-kicker, .showcase-copy .text-link { display: block; }
  .gallery-grid { grid-column: 1 / -1; min-height: 360px; }
  .gallery-card { min-height: 360px; }
  .footer-inner { grid-template-columns: 1fr 1fr; }
  .signature { justify-self: start; }
  .section-heading { grid-template-columns: 1fr; gap: 24px; }
  .detail-card { grid-column: span 3; }
  .detail-card:nth-child(5) { grid-column: 2 / span 4; }
  .why-us { grid-template-columns: 1fr; }
  .why-visual { min-height: 500px; background-position: 4% center; }
  .why-content { padding: 70px 48px 82px; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid li + li { border-left: 0; border-top: 1px solid #2a3944; }
}

@media (max-width: 640px) {
  body { padding-bottom: 62px; }
  .site-header { height: 70px; }
  .header-inner { width: calc(100% - 28px); }
  .brand-mark { font-size: 1.58rem; }
  .brand-mark i { width: 14px; height: 23px; }
  .brand-mark i::after { width: 6px; height: 6px; margin-top: 17px; }
  .brand-sub { font-size: .45rem; }
  .site-nav { top: 70px; }
  .hero { height: 650px; min-height: 650px; }
  .hero-media { inset: 0; background-position: 62% center; }
  .hero-overlay { background: linear-gradient(180deg,rgba(3,10,16,.94) 0%,rgba(3,10,16,.62) 47%,rgba(3,10,16,.25) 68%,rgba(3,10,16,.78) 100%); }
  .hero-content { width: calc(100% - 36px); justify-content: flex-start; padding-top: 56px; }
  .hero h1 { font-size: clamp(1.45rem,7vw,2rem); }
  .hero-brand-main { font-size: clamp(3.9rem,19vw,5.4rem); }
  .hero-brand-sub { margin-left: 30px; font-size: .8rem; }
  .hero-copy { font-size: .94rem; }
  .hero-edge { display: none; }
  .services-grid { grid-template-columns: 1fr; }
  .service-item { min-height: 210px; padding: 28px 30px; border-right: 0 !important; }
  .service-item:last-child { grid-column: auto; }
  .service-item p { max-width: 310px; }
  .showcase { display: flex; flex-direction: column; }
  .showcase-photo { min-height: 320px; background-image: linear-gradient(0deg,#050c12,transparent 35%),url("ytek-hero.jpg"); background-position: center,62% center; }
  .showcase-copy { min-height: auto; padding: 54px 30px 58px 42px; }
  .slanted-line { left: 20px; }
  .showcase-copy h2 { font-size: 2rem; }
  .gallery-grid { min-height: 560px; display: grid; grid-template-columns: 1fr 1fr; background: none; }
  .gallery-card { min-height: 280px; border-bottom: 1px solid rgba(255,255,255,.16); }
  .footer-inner { grid-template-columns: 1fr; gap: 28px; padding: 34px 24px; }
  .signature { justify-self: center; }
  .socials { order: 3; }
  .mobile-actions { position: fixed; z-index: 100; left: 0; right: 0; bottom: 0; height: 62px; display: grid; grid-template-columns: 1fr 1fr; box-shadow: 0 -10px 28px rgba(0,0,0,.35); }
  .mobile-actions a { display: grid; place-items: center; font-size: .78rem; font-weight: 950; letter-spacing: .08em; }
  .whatsapp { background: #1e9d55; color: #fff; }
  .mobile-call { background: var(--yellow); color: var(--ink); }
  .intro-loader p { font-size: .62rem; letter-spacing: .27em; }
  .service-details, .process { padding: 72px 0 78px; }
  .section-shell { width: calc(100% - 36px); }
  .section-heading { margin-bottom: 34px; }
  .section-heading h2, .why-content h2, .process-heading h2 { font-size: 2.35rem; }
  .section-heading > p { font-size: .92rem; line-height: 1.65; }
  .detail-grid { grid-template-columns: 1fr; }
  .detail-card, .detail-card:nth-child(4), .detail-card:nth-child(5), .detail-card-wide { grid-column: auto; min-height: 260px; padding: 30px 27px; }
  .detail-card h3 { margin-top: 42px; }
  .why-visual { min-height: 420px; background-position: 3% center; }
  .why-content { padding: 62px 24px 70px; }
  .why-list { grid-template-columns: 1fr; }
  .process-grid li { grid-template-columns: 58px 1fr; gap: 15px; min-height: 190px; padding: 34px 12px; }
  .process-grid > li > span { font-size: 2.15rem; }
  .long-cta { min-height: 620px; background-position: 59% center; }
  .long-cta h2 { font-size: 3rem; }
  .long-cta-actions { flex-direction: column; align-items: stretch; }
  .long-cta-actions a { width: 100%; }
}

@media (max-width: 370px) {
  .hero { min-height: 610px; height: 610px; }
  .hero-content { padding-top: 42px; }
  .hero h1 { font-size: 1.4rem; }
  .hero-brand-main { font-size: 3.7rem; }
  .gallery-grid { min-height: 500px; }
  .gallery-card { min-height: 250px; }
}
