/* Homepage art direction: deep charcoal, silver typography, architectural light. */
.home-theme {
  --paper: #080909;
  --ink: #f0f0ed;
  --muted: #a3a5a6;
  --line: #2b2d2e;
  color-scheme: dark;
  background: var(--paper);
}
.home-theme ::selection { background: #ddd; color: #101010; }
.home-theme .header { background: #080909ed; border-bottom-color: #ffffff14; backdrop-filter: blur(18px); }
.home-theme .header-inner { height: 94px; }
.home-theme .brand img { filter: brightness(0) invert(1); opacity: .95; }
.home-theme .nav > a { color: #b9babb; transition: color .2s; }
.home-theme .nav > a:hover, .home-theme .nav > a[aria-current=page] { color: #fff; }
.home-theme .nav > a[aria-current=page]:after { background: #e2e2e2; }
.home-theme .nav .nav-cta { border-color: #545657; color: #eee; }
.home-theme .nav .nav-cta:hover { border-color: #d6d6d6; }
.home-theme .menu-button { color: #eee; border-color: #515354; }
.home-theme .hero { min-height: 740px; background: #080909; }
.home-theme .hero-image { object-position: 75% center; opacity: .88; }
.home-theme .hero:before {
  background: linear-gradient(90deg,#080909 1%,#080909dc 29%,#08090970 53%,#08090908 78%),linear-gradient(0deg,#080909 0%,#08090900 32%,#08090950 100%);
}
.home-theme .hero-top { padding-top: 34px; color: #aaaeb0; }
.home-theme .hero-top > .eyebrow:first-child { display: flex; gap: 18px; align-items: center; }
.home-theme .hero-top > .eyebrow:first-child:before { content: ''; width: 29px; height: 1px; background: #a3a5a6; }
.home-theme .hero-copy { padding-top: 72px; padding-bottom: 151px; }
.home-theme .hero h1 { font-size: clamp(74px,8.35vw,136px); font-weight: 400; line-height: 1.04; letter-spacing: -.067em; max-width: 1100px; }
.home-theme .hero h1 span { color: #b6b9bb; background: linear-gradient(115deg,#f4f5f5 0%,#a4a8aa 42%,#62666a 85%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.home-theme .hero-detail { margin-top: 34px; border-left: 1px solid #ffffff3b; padding-left: 24px; }
.home-theme .hero-desc { margin-top: 0; font-size: 16px; color: #babdc0; max-width: 470px; }
.home-theme .hero-actions { margin-top: 28px; gap: 30px; }
.home-theme .button.white { background: #efefec; border-color: #efefec; padding: 19px 25px; color: #101111; }
.home-theme .button.white:hover { background: #fff; border-color: #fff; }
.home-theme .text-link { border-bottom-color: #545758; color: #d9dbdc; }
.home-theme .text-link:hover { border-bottom-color: #eee; color: #fff; }
.home-theme .hero-bottom { border-top-color: #ffffff25; padding-block: 25px; color: #93989a; }
.home-theme .hero-bottom strong { font-size: 15px; color: #dcdddd; }
.home-theme .hero-bottom > a { color: #b7b9ba; }
.home-theme .partners { background: #0b0c0c; padding-block: 31px 40px; border-bottom-color: #272929; }
.home-theme .partners-label { color: #9b9fa1; }
.home-theme .partner-names { margin-top: 32px; color: #cdcecd; }
.home-theme .partner-name { font-weight: 600; }
.home-theme .partner-mark { filter: brightness(0) invert(1); opacity: .78; }
.home-theme .partner-mark-adres { filter: grayscale(1) invert(1); }
.home-theme .partner-logo-link:hover .partner-mark,.home-theme .partner-logo-link:focus-visible .partner-mark { opacity: 1; }
.home-theme #yaklasim { padding-block: 126px 112px; }
.home-theme #yaklasim .section-heading { margin-bottom: 0; }
.home-theme #yaklasim .text-link { margin-top: 24px; }
.home-theme .section-heading .eyebrow { color: #8f9496; }
.home-theme .section-heading h2 { font-weight: 400; letter-spacing: -.055em; }
.home-theme .section-heading p { color: #afb1b2; font-size: 16px; }
.home-theme .section-heading .muted { color: #939799; }
.home-theme .services { background: #101212; border-block: 1px solid #272a2a; padding-block: 105px; }
.home-theme .service-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid #383b3c; }
.home-theme .service-row { display: grid; grid-template-columns: 1fr 44px; grid-template-rows: 80px auto 1fr auto; gap: 27px 15px; align-items: start; padding: 34px; border: 0; position: relative; background: #111414; transition: background .25s; }
.home-theme .service-row + .service-row { border-left: 1px solid #383b3c; }
.home-theme .service-row:last-child { border-bottom: 0; }
.home-theme .service-row:hover { background: #1a1d1e; }
.home-theme .service-row:before { content: ''; position: absolute; top: -1px; left: -1px; right: -1px; height: 1px; background: #c9cdcf; opacity: 0; transition: opacity .25s; }
.home-theme .service-row:hover:before { opacity: 1; }
.home-theme .service-number { grid-column: 1; grid-row: 1; padding: 0; font-size: 63px; line-height: 1; letter-spacing: -.06em; color: #6b7072; font-weight: 400; }
.home-theme .circle-arrow { grid-column: 2; grid-row: 1; height: 42px; width: 42px; border-color: #555b5e; color: #d6d9db; font-size: 22px; }
.home-theme .service-row:hover .circle-arrow { background: #e7e9e9; border-color: #e7e9e9; color: #111; transform: rotate(45deg); }
.home-theme .service-row h3 { grid-column: 1/-1; font-weight: 400; font-size: clamp(24px,2.2vw,34px); line-height: 1.27; letter-spacing: -.035em; }
.home-theme .service-row p { grid-column: 1/-1; grid-row: 3; color: #adb2b4; font-size: 16px; margin: 0; }
.home-theme .service-link { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid #363b3d; padding-top: 23px; margin-top: 5px; font-size: 13px; color: #dadcde; }
.home-theme .experience { background: #080909; padding-block: 125px; }
.home-theme .experience-grid { gap: 7vw; }
.home-theme .experience-visual { border: 1px solid #292d2f; min-height: 550px; }
.home-theme .detail-image { opacity: .72; object-position: 81% center; }
.home-theme .photo-note { padding: 30px; background: linear-gradient(transparent,#050606d9); min-height: 120px; }
.home-theme .photo-note > .eyebrow { max-width: 180px; line-height: 1.9; }
.home-theme .experience-copy h2 { font-weight: 400; font-size: clamp(39px,4vw,62px); }
.home-theme .experience-copy > p { font-size: 16px; color: #abb0b2; }
.home-theme .experience-stats { padding-block: 26px; }
.home-theme .experience-stats strong { font-size: 45px; }
.home-theme .contact-cta { background: radial-gradient(ellipse at 75% 0%,#202426 0%,#101313 40%,#0b0d0e 80%); border-block: 1px solid #373c3e; padding-block: 93px 111px; }
.home-theme .cta-grid { grid-template-columns: 1.8fr 1fr; align-items: end; }
.home-theme .cta-grid h2 { font-size: clamp(52px,6vw,94px); font-weight: 400; line-height: 1.12; }
.home-theme .cta-grid h2 span { color: #a5aaac; }
.home-theme .cta-grid p { color: #bec2c4; }
.home-theme .site-footer { background: #080909; padding-top: 65px; }
.home-theme .footer-grid { padding-bottom: 58px; }
.home-theme .footer-col > a { color: #c3c7c8; }
.home-theme .footer-col > a:hover { color: #fff; }
.home-theme .footer-col > p { color: #a8aeb0; }
.home-theme .footer-bottom { border-top-color: #2b3032; }
.home-theme .wa-float { background: #171b1ce8; backdrop-filter: blur(10px); color: #e4e6e6; border-color: #4b5153; box-shadow: 0 6px 28px #0004; }
@media (prefers-reduced-motion:no-preference) {
  .home-theme .hero h1 { animation: home-arrive .85s ease-out both; }
  .home-theme .hero-detail { animation: home-arrive 1s .1s ease-out both; }
  @keyframes home-arrive { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
}
@media(min-width:1600px) {
  .home-theme .hero { min-height: 830px; }
  .home-theme .hero-copy { padding-top: 93px; }
}
@media(max-width:1100px) {
  .home-theme .service-row { padding: 26px; gap: 23px 10px; }
  .home-theme .cta-grid { grid-template-columns: 1.5fr 1fr; }
}
@media(max-width:900px) {
  .home-theme .service-list { grid-template-columns: 1fr; }
  .home-theme .service-row { grid-template-columns: 65px 1fr 42px; grid-template-rows: auto auto auto; gap: 17px 26px; padding: 30px; }
  .home-theme .service-row + .service-row { border-left: 0; border-top: 1px solid #383b3c; }
  .home-theme .service-number { font-size: 45px; grid-row: 1; }
  .home-theme .service-row h3 { grid-column: 2; grid-row: 1; font-size: 30px; }
  .home-theme .circle-arrow { grid-column: 3; grid-row: 1; }
  .home-theme .service-row p { grid-column: 2; grid-row: 2; max-width: none; }
  .home-theme .service-link { grid-column: 2/-1; grid-row: 3; }
}
@media(max-width:760px) {
  .home-theme .header-inner { height: 77px; }
  .home-theme .nav { background: #101313; border-bottom: 1px solid #444a4c; }
  .home-theme .hero { min-height: 0; }
  .home-theme .hero-top { padding-top: 27px; }
  .home-theme .hero-top .eyebrow { font-size: 11px; }
  .home-theme .hero-top > .eyebrow:first-child { gap: 12px; }
  .home-theme .hero-top > .eyebrow:first-child:before { width: 18px; }
  .home-theme .hero-image { object-position: 69% center; opacity: .7; }
  .home-theme .hero:before { background: linear-gradient(90deg,#080909eb,#08090972),linear-gradient(0deg,#080909,transparent 50%); }
  .home-theme .hero-copy { padding-top: 86px; padding-bottom: 67px; }
  .home-theme .hero h1 { font-size: clamp(45px,11.6vw,87px); line-height: 1.12; letter-spacing: -.06em; }
  .home-theme .hero h1 span { background-image: linear-gradient(115deg,#e0e3e4,#989da0); }
  .home-theme .hero-detail { margin-top: 31px; padding-left: 17px; }
  .home-theme .hero-desc { font-size: 16px; line-height: 1.85; }
  .home-theme .hero-desc br { display: none; }
  .home-theme .hero-actions { gap: 25px; align-items: flex-start; flex-direction: column; }
  .home-theme .hero-actions .text-link { font-size: 13px; }
  .home-theme .button.white { padding: 17px 22px; }
  .home-theme .hero-bottom { position: relative; left: auto; right: auto; margin-inline: var(--gutter); padding-block: 23px; align-items: center; }
  .home-theme .hero-bottom strong { font-size: 14px; }
  .home-theme .hero-bottom a { font-size: 12px; }
  .home-theme .partners { padding-block: 27px 33px; }
  .home-theme .partners-label { gap: 18px; }
  .home-theme .partners-label .eyebrow { font-size: 11px; }
  .home-theme .partners-label a { font-size: 12px; }
  .home-theme .partner-names { gap: 0; }
  .home-theme #yaklasim { padding-block: 76px; }
  .home-theme .section-heading h2 { font-size: clamp(34px,8.8vw,52px); }
  .home-theme .services { padding-block: 72px; }
  .home-theme .service-list { border-inline: 0; }
  .home-theme .service-row { padding: 29px 0; gap: 20px 17px; grid-template-columns: 42px 1fr 36px; }
  .home-theme .service-number { font-size: 34px; }
  .home-theme .service-row h3 { font-size: 25px; grid-column: 2/-1; padding-right: 34px; }
  .home-theme .circle-arrow { width: 32px; height: 32px; font-size: 18px; }
  .home-theme .service-row p { grid-column: 2/-1; }
  .home-theme .service-row:hover .circle-arrow { transform: none; }
  .home-theme .experience { padding-block: 73px; }
  .home-theme .experience-grid { gap: 43px; }
  .home-theme .experience-visual { min-height: 370px; }
  .home-theme .photo-note { padding: 20px; gap: 15px; }
  .home-theme .photo-note .eyebrow, .home-theme .photo-note > span:last-child { font-size: 11px; }
  .home-theme .experience-copy h2 { font-size: 41px; }
  .home-theme .experience-stats strong { font-size: 41px; }
  .home-theme .contact-cta { padding-block: 68px 78px; }
  .home-theme .cta-grid { grid-template-columns: 1fr; gap: 34px; }
  .home-theme .cta-grid h2 { font-size: clamp(39px,10.3vw,64px); }
  .home-theme .site-footer { padding-top: 48px; }
}
@media(max-width:360px) {
  .home-theme .hero-top .eyebrow { font-size: 10px; letter-spacing: .08em; }
  .home-theme .service-row h3 { font-size: 23px; }
  .home-theme .service-row { grid-template-columns: 34px 1fr 28px; gap: 18px 14px; }
  .home-theme .experience-copy h2 { font-size: 36px; }
}

/* Hero carousel: every slide shares the same grid cell to keep height stable. */
.home-theme .hero-slider { min-height: 0; }
.home-theme .hero-slider::before { content: none; }
.home-theme .hero-slides { display: grid; }
.home-theme .hero-slide { position: relative; isolation: isolate; grid-area: 1 / 1; min-width: 0; min-height: 740px; opacity: 1; visibility: visible; transition: opacity .65s ease, visibility .65s; }
.home-theme .hero-slide[aria-hidden="true"] { opacity: 0; visibility: hidden; pointer-events: none; }
.home-theme .hero-slide::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#080909 1%,#080909dc 29%,#08090970 53%,#08090908 78%),linear-gradient(0deg,#080909 0%,#08090900 32%,#08090950 100%); }
.home-theme .hero-slide .hero-image { z-index: -2; }
.home-theme .hero-slider .hero-copy { padding-bottom: 157px; }
.home-theme .hero-slider .hero-title { font-size: clamp(74px,8.35vw,136px); font-weight: 400; line-height: 1.04; letter-spacing: -.067em; max-width: 1160px; animation: none; }
.home-theme .hero-title span { color: #b6b9bb; background: linear-gradient(115deg,#f4f5f5 0%,#a4a8aa 42%,#62666a 85%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.home-theme .hero-slider .hero-detail { animation: none; }
.home-theme .hero-slider .hero-bottom { z-index: 2; justify-content: flex-end; border-top: 0; }
.slider-controls { display: flex; align-items: center; gap: 17px; flex-shrink: 0; }
.slider-controls[hidden] { display: none; }
.slider-navigation { display: flex; gap: 9px; align-items: center; }
.slider-arrow,.slider-playback,.slider-dot { appearance: none; display: grid; place-items: center; color: #e2e5e5; cursor: pointer; padding: 0; background: transparent; border: 1px solid #4b5052; min-width: 44px; min-height: 44px; transition: color .2s, background .2s, border-color .2s; }
.slider-arrow { font: 23px Arial,sans-serif; }
.slider-playback { font-size: 16px; border: 0; }
.slider-arrow:hover,.slider-playback:hover { color: #111; background: #eee; border-color: #eee; }
.slider-counter { font-variant-numeric: tabular-nums; font-size: 13px; color: #e5e7e7; white-space: nowrap; }
.slider-total { color: #92999c; }
.slider-dots { display: flex; gap: 1px; align-items: center; }
.slider-dot { border: 0; min-width: 28px; width: 28px; }
.slider-dot span { height: 2px; width: 21px; background: #697174; transition: background .2s, transform .2s; }
.slider-dot[aria-pressed="true"] span { background: #f0f2f2; transform: scaleY(2); }
.slider-dot:hover span { background: #fff; }
.visually-hidden { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip-path: inset(50%)!important; white-space: nowrap!important; border: 0!important; }
@media(min-width:1600px) { .home-theme .hero-slide { min-height: 830px; } }
@media(max-width:760px) {
  .home-theme .hero-slide { min-height: 0; }
  .home-theme .hero-slide::before { background: linear-gradient(90deg,#080909eb,#08090972),linear-gradient(0deg,#080909,transparent 50%); }
  .home-theme .hero-slider .hero-copy { padding-top: 75px; padding-bottom: 47px; }
  .home-theme .hero-slider .hero-title { font-size: clamp(35px,10.8vw,80px); line-height: 1.12; letter-spacing: -.06em; }
  .home-theme .hero-title span { background-image: linear-gradient(115deg,#e0e3e4,#989da0); }
  .home-theme .hero-slider .hero-desc { max-width: 470px; }
  .home-theme .hero-slider .hero-bottom { padding-block: 20px; }
  .slider-controls { width: 100%; justify-content: space-between; gap: 10px; }
  .slider-navigation { gap: 12px; }
  .slider-dots { gap: 0; }
  .slider-dot { min-width: 26px; width: 26px; }
}
@media(max-width:380px) {
  .slider-counter { display: none; }
  .slider-navigation { gap: 8px; }
}
@media(prefers-reduced-motion:reduce) { .home-theme .hero-slide,.slider-dot span { transition: none; } }

/* V2 mobile rhythm: retain editorial breathing room while removing excess gaps. */
@media(max-width:760px) {
  .home-theme .partners { padding-block: 22px 26px; }
  .home-theme .partner-names { margin-top: 20px; }
  .home-theme .partner-name { min-height: 126px; padding: 18px 8px; }
  .home-theme #yaklasim { padding-block: 62px 58px; }
  .home-theme .section-heading { margin-bottom: 43px; }
  .home-theme .services { padding-block: 61px 62px; }
  .home-theme .service-row { padding-block: 24px; gap: 16px 17px; }
  .home-theme .experience { padding-block: 64px; }
  .home-theme .experience-grid { gap: 31px; }
  .home-theme .contact-cta { padding-block: 62px 69px; }
  .home-theme .cta-grid { gap: 26px; }
}
