/* Shadowless homepage premium presentation layer.
   Keeps the authored page/content intact while adding compact controls and motion. */

.hero{
  position:relative;
  isolation:isolate;
  overflow:clip;
}
.hero::before,
.hero::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:-1;
  border-radius:50%;
}
.hero::before{
  width:620px;
  height:620px;
  right:-210px;
  top:-210px;
  background:radial-gradient(circle,rgba(42,141,244,.21),rgba(42,141,244,0) 68%);
}
.hero::after{
  width:500px;
  height:500px;
  left:-220px;
  bottom:-250px;
  background:radial-gradient(circle,rgba(63,208,255,.12),rgba(63,208,255,0) 72%);
}

.seo-intent-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.seo-intent-link{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:7px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:rgba(255,255,255,.055);
  color:var(--muted);
  font-size:13px;
  font-weight:750;
  transition:transform .2s ease,border-color .2s ease,color .2s ease,background .2s ease,box-shadow .2s ease;
}
.seo-intent-link::after{
  content:"→";
  color:var(--primary-2);
  transition:transform .2s ease;
}
.seo-intent-link:hover{
  transform:translateY(-2px);
  border-color:rgba(42,141,244,.34);
  color:var(--text);
  background:rgba(42,141,244,.08);
  box-shadow:0 12px 30px rgba(25,74,132,.10);
}
.seo-intent-link:hover::after{transform:translateX(2px)}

/* Floating glass navigation, visually aligned with newer Shadowless products. */
.site-header{
  top:0;
  padding:12px 0 0;
  border:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:padding .24s ease;
}
.site-header .nav-wrap{
  min-height:64px;
  height:auto;
  padding:8px 14px;
  border:1px solid var(--line);
  border-radius:20px;
  background:color-mix(in srgb,var(--surface) 80%,transparent);
  box-shadow:0 14px 40px rgba(3,12,28,.14),inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(22px) saturate(125%);
  -webkit-backdrop-filter:blur(22px) saturate(125%);
  transition:background .24s ease,border-color .24s ease,box-shadow .24s ease,transform .24s ease;
}
.site-header.is-scrolled{padding-top:7px}
.site-header.is-scrolled .nav-wrap{
  background:color-mix(in srgb,var(--surface) 91%,transparent);
  box-shadow:0 18px 46px rgba(3,12,28,.22),inset 0 1px 0 rgba(255,255,255,.045);
}
html[data-theme="light"] .site-header .nav-wrap{
  background:rgba(255,255,255,.82);
  border-color:rgba(27,73,121,.12);
  box-shadow:0 14px 38px rgba(36,72,111,.10),inset 0 1px 0 rgba(255,255,255,.92);
}
html[data-theme="light"] .site-header.is-scrolled .nav-wrap{
  background:rgba(255,255,255,.94);
  box-shadow:0 18px 44px rgba(36,72,111,.14),inset 0 1px 0 #fff;
}

/* The old controls stay in the DOM for compatibility with main.js, but the new UI owns presentation. */
.shadowless-native-control,
.shadowless-native-language{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
  pointer-events:none!important;
}

.shadowless-control-menu{
  position:relative;
  display:inline-flex;
  align-items:center;
  z-index:75;
}
.shadowless-control-trigger{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  padding:7px 11px;
  border:1px solid var(--line);
  border-radius:12px;
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  color:var(--text);
  font:750 12px/1 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.shadowless-control-trigger:hover,
.shadowless-control-menu[data-open="true"] .shadowless-control-trigger{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--primary-2) 38%,var(--line));
  background:color-mix(in srgb,var(--surface-2) 90%,var(--primary) 10%);
  box-shadow:0 10px 28px rgba(26,91,165,.12),inset 0 1px 0 rgba(255,255,255,.05);
}
html[data-theme="light"] .shadowless-control-trigger{
  background:rgba(255,255,255,.92);
  border-color:#d5e0ed;
  box-shadow:0 8px 22px rgba(39,75,112,.05),inset 0 1px 0 #fff;
}
html[data-theme="light"] .shadowless-control-trigger:hover,
html[data-theme="light"] .shadowless-control-menu[data-open="true"] .shadowless-control-trigger{
  background:#fff;
  border-color:rgba(27,116,216,.27);
}
.shadowless-control-icon{
  width:16px;
  height:16px;
  flex:0 0 16px;
  display:inline-grid;
  place-items:center;
  color:var(--primary-2);
  line-height:0;
}
.shadowless-control-icon svg{
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.shadowless-language-current{
  min-width:21px;
  text-align:center;
  letter-spacing:.06em;
}
.shadowless-chevron{
  color:var(--muted);
  font-size:13px;
  transform:translateY(-1px);
  transition:transform .16s ease;
}
.shadowless-control-menu[data-open="true"] .shadowless-chevron{
  transform:rotate(180deg) translateY(1px);
}
.shadowless-control-panel{
  position:absolute;
  top:calc(100% + 9px);
  right:0;
  min-width:174px;
  padding:7px;
  border:1px solid var(--line);
  border-radius:15px;
  background:color-mix(in srgb,var(--surface) 97%,transparent);
  box-shadow:0 24px 60px rgba(0,0,0,.28);
  backdrop-filter:blur(22px) saturate(125%);
  -webkit-backdrop-filter:blur(22px) saturate(125%);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-7px) scale(.985);
  transform-origin:top right;
  transition:opacity .16s ease,transform .16s ease,visibility .16s step-end;
}
.shadowless-control-menu[data-open="true"] .shadowless-control-panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
  transition:opacity .16s ease,transform .16s ease,visibility 0s;
}
html[data-theme="light"] .shadowless-control-panel{
  background:rgba(255,255,255,.98);
  border-color:#d8e2ee;
  box-shadow:0 22px 52px rgba(37,66,101,.16);
}
.shadowless-control-panel button{
  appearance:none;
  width:100%;
  display:grid;
  grid-template-columns:22px minmax(0,1fr) 18px;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  font:650 12px/1.25 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  text-align:left;
  cursor:pointer;
  transition:background .14s ease,color .14s ease,transform .14s ease;
}
.shadowless-control-panel button:hover{
  background:color-mix(in srgb,var(--primary) 9%,var(--surface-2));
  transform:translateX(1px);
}
.shadowless-control-panel button.is-selected{
  background:color-mix(in srgb,var(--primary) 12%,var(--surface-2));
}
.shadowless-option-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shadowless-check{opacity:0;color:var(--primary-2);font-weight:900;text-align:center}
.shadowless-control-panel button.is-selected .shadowless-check{opacity:1}
.shadowless-language-panel{
  width:224px;
  max-height:min(430px,70vh);
  overflow:auto;
  scrollbar-width:thin;
}
.shadowless-language-code{
  color:var(--primary-2);
  font-size:10px;
  font-weight:900;
  letter-spacing:.05em;
}

/* Compact Hell/Dunkel toggle. The normal dark state deliberately stays understated;
   the brighter outline is reserved for hover/focus, matching the rest of the site. */
.shadowless-theme-menu .shadowless-theme-toggle{
  gap:7px;
  min-height:38px;
  padding:6px 11px 6px 9px;
  border-radius:999px;
  border-color:color-mix(in srgb,var(--line) 84%,transparent);
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transform:none;
}
html[data-theme="dark"] .shadowless-theme-menu .shadowless-theme-toggle{
  border-color:rgba(132,160,191,.24);
  background:rgba(9,23,41,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
html[data-theme="light"] .shadowless-theme-menu .shadowless-theme-toggle{
  border-color:#d8e3ef;
  background:rgba(255,255,255,.86);
  box-shadow:0 5px 16px rgba(39,75,112,.045),inset 0 1px 0 #fff;
}
.shadowless-theme-menu .shadowless-theme-toggle:hover,
.shadowless-theme-menu .shadowless-theme-toggle:focus-visible{
  transform:translateY(-1px);
  outline:none;
  border-color:color-mix(in srgb,var(--primary-2) 56%,var(--line));
  background:color-mix(in srgb,var(--surface-2) 92%,var(--primary) 8%);
  box-shadow:0 8px 24px rgba(31,116,210,.13),0 0 0 1px rgba(86,167,255,.05),inset 0 1px 0 rgba(255,255,255,.055);
}
html[data-theme="dark"] .shadowless-theme-menu .shadowless-theme-toggle:hover,
html[data-theme="dark"] .shadowless-theme-menu .shadowless-theme-toggle:focus-visible{
  border-color:rgba(111,183,255,.58);
  background:rgba(11,30,52,.88);
  box-shadow:0 8px 26px rgba(18,100,193,.18),0 0 18px rgba(70,157,255,.08),inset 0 1px 0 rgba(255,255,255,.055);
}
html[data-theme="light"] .shadowless-theme-menu .shadowless-theme-toggle:hover,
html[data-theme="light"] .shadowless-theme-menu .shadowless-theme-toggle:focus-visible{
  border-color:rgba(42,141,244,.34);
  background:#fff;
  box-shadow:0 8px 22px rgba(39,91,151,.09),0 0 0 1px rgba(42,141,244,.025),inset 0 1px 0 #fff;
}
.shadowless-theme-icon{
  width:15px;
  height:15px;
  flex-basis:15px;
}
.shadowless-theme-menu[data-theme-state="dark"] .shadowless-theme-icon{color:#85c6ff}
.shadowless-theme-menu[data-theme-state="light"] .shadowless-theme-icon{color:#f2a51f}
.shadowless-theme-track{
  position:relative;
  width:30px;
  height:16px;
  flex:0 0 30px;
  border-radius:999px;
  background:rgba(42,141,244,.26);
  border:1px solid rgba(92,165,240,.26);
  box-shadow:inset 0 1px 3px rgba(2,17,34,.18);
  transition:background .18s ease,border-color .18s ease;
}
html[data-theme="light"] .shadowless-theme-track{
  background:#dcecff;
  border-color:#c5dcf6;
  box-shadow:inset 0 1px 3px rgba(36,83,130,.08);
}
.shadowless-theme-thumb{
  position:absolute;
  top:1px;
  left:1px;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#4b9df0;
  box-shadow:0 1px 3px rgba(2,27,55,.34),inset 0 1px 0 rgba(255,255,255,.28);
  transform:translateX(0);
  transition:transform .2s cubic-bezier(.2,.8,.2,1),background .18s ease,box-shadow .18s ease;
}
.shadowless-theme-toggle[data-theme-state="dark"] .shadowless-theme-thumb{
  transform:translateX(14px);
  background:#65b5ff;
}
.shadowless-theme-label{
  min-width:34px;
  white-space:nowrap;
  text-align:left;
  font-weight:800;
  letter-spacing:.005em;
}

/* Progressive reveal with subtle stagger. */
.home-reveal{
  opacity:0;
  transform:translate3d(0,24px,0) scale(.994);
  transition:opacity .64s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .64s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms);
  will-change:opacity,transform;
}
.home-reveal.is-visible{
  opacity:1;
  transform:none;
}

/* Premium pointer spotlight stays deliberately subtle. */
.premium-spotlight{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.premium-spotlight::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(280px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(63,208,255,.11),rgba(42,141,244,.045) 34%,transparent 72%);
  transition:opacity .22s ease;
}
.premium-spotlight:hover::before{opacity:1}
html[data-theme="light"] .premium-spotlight::before{
  background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(42,141,244,.095),rgba(63,208,255,.035) 35%,transparent 72%);
}

/* Mouse-follow sheen on calls to action. */
.premium-button{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
.premium-button::before{
  content:"";
  position:absolute;
  z-index:-1;
  width:120px;
  height:120px;
  left:calc(var(--button-x,50%) - 60px);
  top:calc(var(--button-y,50%) - 60px);
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.28),transparent 68%);
  opacity:0;
  transition:opacity .2s ease;
  pointer-events:none;
}
.premium-button:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 38px rgba(25,85,155,.18);
}
.premium-button:hover::before{opacity:.58}

/* Scan accent in the hero preview, inspired by the analyzer but adapted to Shadowless. */
.hero-device .device-shell{
  position:relative;
  overflow:hidden;
}
.home-scan-line{
  position:absolute;
  left:0;
  right:0;
  top:12%;
  z-index:4;
  height:1px;
  pointer-events:none;
  opacity:.54;
  background:linear-gradient(90deg,transparent,var(--primary-2),rgba(127,183,255,.9),transparent);
  box-shadow:0 0 18px rgba(63,208,255,.48);
  animation:shadowlessScan 5.8s ease-in-out infinite;
}
@keyframes shadowlessScan{
  0%{transform:translateY(-55px);opacity:0}
  12%{opacity:.5}
  88%{opacity:.5}
  100%{transform:translateY(470px);opacity:0}
}

/* Very low-opacity ambient cursor light. */
.home-pointer-glow{
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(340px circle at var(--pointer-x,50vw) var(--pointer-y,30vh),rgba(42,141,244,.06),transparent 72%);
}
html[data-theme="light"] .home-pointer-glow{opacity:.55}

@media (min-width:1021px){
  .hero.section-pad{
    min-height:auto;
    padding:62px 0 72px;
  }
  .hero-grid{
    align-items:center;
    gap:54px;
  }
  .hero-copy{padding-block:8px}
  .hero h1{
    font-size:clamp(48px,5.35vw,74px);
    line-height:.96;
  }
  .hero-lead{max-width:680px}
  .hero-device{
    transform:translate3d(0,var(--hero-parallax-y,0px),0);
    will-change:transform;
  }
  .hero-device .device-shell{
    transform:perspective(1200px) rotateX(var(--hero-tilt-x,0deg)) rotateY(var(--hero-tilt-y,0deg));
    transform-style:preserve-3d;
    transition:transform .22s ease,border-color .24s ease,box-shadow .24s ease;
  }
  .hero-device:hover .device-shell{
    border-color:rgba(42,141,244,.28);
    box-shadow:0 30px 86px rgba(24,58,96,.20),0 0 50px rgba(63,208,255,.05);
  }
  html[data-theme="dark"] .hero-device:hover .device-shell{
    box-shadow:0 32px 94px rgba(0,0,0,.42),0 0 56px rgba(42,141,244,.09);
  }
  .hero-device .device-content{transform:translateZ(12px)}
  .software-feature-section::before{
    transform:translate3d(0,var(--software-parallax-y,0px),0);
    will-change:transform;
  }
  .service-card,
  .project-card,
  .profile-card,
  .local-card,
  .visual-card,
  .fareoynat-showcase{
    transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
  }
  .service-card:hover,
  .profile-card:hover,
  .local-card:hover,
  .visual-card:hover,
  .fareoynat-showcase:hover{
    transform:translateY(-4px);
    border-color:rgba(42,141,244,.24);
  }
}

@media (max-width:1180px){
  .site-header .nav-wrap{gap:12px}
  .site-header .nav{gap:2px}
  .site-header .nav a{padding-inline:10px}
}

@media (max-width:1020px){
  .seo-intent-links{margin-top:16px}
  .site-header{padding-top:8px}
  .site-header .nav-wrap{border-radius:18px}
}

@media (max-width:760px){
  .site-header{padding:7px 0 0}
  .site-header .nav-wrap{min-height:58px;padding:6px 10px}
  .seo-intent-links{
    display:grid;
    grid-template-columns:1fr;
  }
  .seo-intent-link{
    justify-content:space-between;
    min-height:44px;
  }
  .home-reveal{
    opacity:1;
    transform:none;
    transition:none;
  }
  .mobile-controls{
    display:flex!important;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
  }
  .mobile-controls .shadowless-control-menu{display:inline-flex}
  .shadowless-control-panel{
    right:auto;
    left:0;
    transform-origin:top left;
  }
  .shadowless-language-panel{width:min(250px,calc(100vw - 54px))}
  .desktop-controls .shadowless-control-menu{display:none}
  .home-pointer-glow{display:none}
}

@media (prefers-reduced-motion:reduce){
  .home-reveal,
  .hero-device,
  .hero-device .device-shell,
  .software-feature-section::before,
  .seo-intent-link,
  .seo-intent-link::after,
  .shadowless-control-trigger,
  .shadowless-control-panel,
  .shadowless-chevron,
  .premium-button,
  .premium-button::before,
  .premium-spotlight::before,
  .home-scan-line{
    animation:none!important;
    transition:none!important;
    transform:none!important;
  }
  .home-scan-line,.home-pointer-glow{display:none!important}
  .home-reveal{opacity:1!important}
}
