/* Semantics Digital premium dual-theme and responsive polish.
   Loaded after app.css, admin.css and premium-icons.css so it safely overrides presentation only. */
:root{
  color-scheme:dark;
  --bg:#070b14;
  --bg2:#0b1220;
  --panel:rgba(15,23,42,.86);
  --panel-solid:#0f172a;
  --panel2:#111c2e;
  --panel-soft:rgba(30,41,59,.68);
  --text:#f8fafc;
  --muted:#9aa8ba;
  --line:rgba(148,163,184,.16);
  --line-strong:rgba(167,139,250,.34);
  --primary:#8b5cf6;
  --primary2:#6366f1;
  --accent:#c4b5fd;
  --accent-strong:#a78bfa;
  --success:#34d399;
  --warning:#fbbf24;
  --danger:#fb7185;
  --info:#38bdf8;
  --focus:rgba(139,92,246,.22);
  --surface-highlight:rgba(255,255,255,.055);
  --surface-hover:rgba(139,92,246,.10);
  --header-bg:rgba(7,11,20,.82);
  --sidebar-bg:linear-gradient(180deg,#0b1020 0%,#0a0f1c 48%,#090d18 100%);
  --shadow-sm:0 10px 30px rgba(0,0,0,.20);
  --shadow-md:0 18px 52px rgba(0,0,0,.28);
  --shadow:0 28px 90px rgba(0,0,0,.38);
  --radius:22px;
}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#f4f6fb;
  --bg2:#e9eef7;
  --panel:rgba(255,255,255,.90);
  --panel-solid:#ffffff;
  --panel2:#ffffff;
  --panel-soft:#f8fafc;
  --text:#101828;
  --muted:#667085;
  --line:rgba(15,23,42,.10);
  --line-strong:rgba(109,40,217,.23);
  --primary:#6d28d9;
  --primary2:#4f46e5;
  --accent:#7c3aed;
  --accent-strong:#6d28d9;
  --success:#059669;
  --warning:#b45309;
  --danger:#e11d48;
  --info:#0369a1;
  --focus:rgba(109,40,217,.16);
  --surface-highlight:rgba(255,255,255,.92);
  --surface-hover:rgba(109,40,217,.065);
  --header-bg:rgba(248,250,252,.88);
  --sidebar-bg:linear-gradient(180deg,#ffffff 0%,#f8faff 52%,#f3f6fc 100%);
  --shadow-sm:0 10px 28px rgba(15,23,42,.07);
  --shadow-md:0 18px 48px rgba(15,23,42,.10);
  --shadow:0 28px 80px rgba(15,23,42,.13);
}
html,body{min-width:0;background:var(--bg);color:var(--text)}
body{
  background-image:
    radial-gradient(circle at 8% -10%,rgba(124,58,237,.16),transparent 34%),
    radial-gradient(circle at 96% 8%,rgba(79,70,229,.12),transparent 30%),
    linear-gradient(180deg,var(--bg),var(--bg2));
  background-attachment:fixed;
}
html[data-theme="light"] body{
  background-image:
    radial-gradient(circle at 6% -8%,rgba(124,58,237,.09),transparent 34%),
    radial-gradient(circle at 96% 5%,rgba(59,130,246,.07),transparent 28%),
    linear-gradient(180deg,#f8faff 0%,var(--bg) 48%,#eef2f8 100%);
}
body:before{background:#6d28d9;opacity:.20}
body:after{background:#4338ca;opacity:.16}
html[data-theme="light"] body:before,html[data-theme="light"] body:after{opacity:.075}
.moving-grid{opacity:.58;background-size:72px 72px}
html[data-theme="light"] .moving-grid{opacity:.46}
::selection{background:rgba(139,92,246,.34);color:var(--text)}
*{scrollbar-width:thin;scrollbar-color:rgba(139,92,246,.55) transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:linear-gradient(var(--primary),var(--primary2));border:3px solid transparent;border-radius:999px;background-clip:padding-box}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* Shared premium surfaces */
.card,.panel,.form-card,.filter-bar,.cart-summary,.metric,.gallery-main,.table-wrap,.section-row,.empty{
  border-color:var(--line);
  background:linear-gradient(145deg,var(--surface-highlight),transparent 42%),var(--panel);
  box-shadow:var(--shadow-sm);
  backdrop-filter:blur(18px);
}
.card,.panel,.form-card,.cart-summary,.metric,.section-row,.filter-bar{transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background-color .22s ease}
.card:hover,.section-row:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md)}
.panel:hover,.form-card:hover,.cart-summary:hover{border-color:rgba(139,92,246,.21)}
html[data-theme="light"] .card,html[data-theme="light"] .panel,html[data-theme="light"] .form-card,html[data-theme="light"] .filter-bar,html[data-theme="light"] .cart-summary,html[data-theme="light"] .metric,html[data-theme="light"] .section-row{box-shadow:var(--shadow-sm)}
.card-media{background:var(--panel-soft)}
.card-media:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -1px var(--line)}
.card-media{position:relative}
.price{color:var(--accent-strong)}
.tag,.status{border:1px solid var(--line)}
.tag{background:rgba(139,92,246,.12);color:var(--accent)}
html[data-theme="light"] .tag{background:rgba(109,40,217,.08);color:#6d28d9}

/* Header and public navigation */
.site-header,.admin-top{
  background:var(--header-bg);
  border-color:var(--line);
  box-shadow:0 8px 30px rgba(0,0,0,.10);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
}
html[data-theme="light"] .site-header,html[data-theme="light"] .admin-top{box-shadow:0 8px 30px rgba(15,23,42,.055)}
.brand img,.sidebar-brand img,.footer-logo,.auth-logo{filter:drop-shadow(0 8px 18px rgba(0,0,0,.24))}
html[data-theme="light"] .brand img,html[data-theme="light"] .sidebar-brand img,html[data-theme="light"] .footer-logo,html[data-theme="light"] .auth-logo{filter:drop-shadow(0 7px 15px rgba(15,23,42,.13))}
.nav-links a{position:relative;color:var(--muted);padding:8px 0}
.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:1px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--primary2));transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.nav-links a:hover,.nav-links a.active{color:var(--text)}
.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}
.icon-btn{
  border-color:var(--line);
  background:linear-gradient(145deg,var(--surface-highlight),transparent 75%),var(--panel);
  color:var(--text);
  box-shadow:0 8px 22px rgba(0,0,0,.12);
  transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease;
}
.icon-btn:hover{transform:translateY(-2px);border-color:var(--line-strong);background:var(--surface-hover);box-shadow:0 12px 28px rgba(0,0,0,.18)}
html[data-theme="light"] .icon-btn{box-shadow:0 7px 18px rgba(15,23,42,.065)}
.ticker{border-color:var(--line);background:linear-gradient(90deg,rgba(109,40,217,.22),rgba(79,70,229,.13),rgba(109,40,217,.22))}
html[data-theme="light"] .ticker{background:linear-gradient(90deg,rgba(109,40,217,.08),rgba(59,130,246,.06),rgba(109,40,217,.08))}

/* Buttons */
.btn{min-height:44px;border:1px solid transparent;box-shadow:none;letter-spacing:.005em}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary2));box-shadow:0 13px 30px rgba(99,102,241,.28)}
.btn-primary:hover{box-shadow:0 17px 38px rgba(99,102,241,.38);filter:saturate(1.08)}
.btn-secondary{color:var(--text);background:linear-gradient(145deg,var(--surface-highlight),transparent 70%),var(--panel);border-color:var(--line)}
.btn-secondary:hover{border-color:var(--line-strong);background:var(--surface-hover)}
.btn-danger{background:linear-gradient(135deg,#f43f5e,#be123c);box-shadow:0 12px 28px rgba(225,29,72,.20)}
.btn-sm{min-height:36px}
button:disabled,.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none!important;filter:none!important}

/* Inputs and forms */
.field,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="url"],input[type="date"],input[type="datetime-local"],input[type="search"],select,textarea{
  color:var(--text);
  background:var(--panel-soft);
  border-color:var(--line);
  caret-color:var(--primary);
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.field:hover,input:hover,select:hover,textarea:hover{border-color:rgba(139,92,246,.27)}
.field:focus,input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--focus);background:var(--panel-solid);outline:none}
input::placeholder,textarea::placeholder{color:var(--muted);opacity:.72}
select.field option,select option{color:var(--text);background:var(--panel-solid)}
input[type="checkbox"],input[type="radio"]{accent-color:var(--primary)}
.form-group label{color:var(--muted)}

/* Hero and content */
.hero-card{border-color:var(--line-strong);background:linear-gradient(145deg,rgba(99,102,241,.28),rgba(7,11,20,.88));box-shadow:var(--shadow)}
html[data-theme="light"] .hero-card{background:linear-gradient(145deg,rgba(109,40,217,.13),rgba(255,255,255,.92))}
.hero-card:after{background:linear-gradient(to top,rgba(7,11,20,.96),rgba(7,11,20,.16) 70%,transparent)}
.gradient-text{background:linear-gradient(100deg,#fff 2%,#ddd6fe 42%,#a78bfa 72%,#818cf8);-webkit-background-clip:text;background-clip:text;color:transparent}
html[data-theme="light"] .gradient-text{background:linear-gradient(100deg,#111827 2%,#6d28d9 48%,#4f46e5);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow,.service-icon,.premium-heading-icon{border-color:var(--line-strong);background:linear-gradient(145deg,rgba(139,92,246,.20),rgba(99,102,241,.07));color:var(--accent)}
html[data-theme="light"] .eyebrow,html[data-theme="light"] .service-icon,html[data-theme="light"] .premium-heading-icon{background:linear-gradient(145deg,rgba(109,40,217,.105),rgba(79,70,229,.035));color:#6d28d9}

/* Tables */
.table-wrap{max-width:100%;overflow:auto;overscroll-behavior-inline:contain}
.table{background:transparent}
.table th{background:var(--panel-soft);color:var(--muted);position:sticky;top:0;z-index:1}
.table th,.table td{border-color:var(--line)}
.table tbody tr{transition:background .18s ease}
.table tbody tr:hover{background:var(--surface-hover)}
.table tbody tr:last-child td{border-bottom:0}
.table-actions{flex-wrap:wrap}

/* Alerts and states */
.alert{box-shadow:var(--shadow-sm);backdrop-filter:blur(14px)}
.alert-success{background:rgba(16,185,129,.105);border-color:rgba(16,185,129,.28);color:#6ee7b7}
.alert-warning{background:rgba(245,158,11,.105);border-color:rgba(245,158,11,.28);color:#fcd34d}
.alert-error,.alert-danger{background:rgba(244,63,94,.105);border-color:rgba(244,63,94,.28);color:#fda4af}
html[data-theme="light"] .alert-success{color:#047857;background:#ecfdf5}
html[data-theme="light"] .alert-warning{color:#92400e;background:#fffbeb}
html[data-theme="light"] .alert-error,html[data-theme="light"] .alert-danger{color:#be123c;background:#fff1f2}
.status-paid,.status-completed,.status-success,.status-ready,.status-resolved,.status-active,.status-enabled{background:rgba(16,185,129,.11);color:var(--success);border-color:rgba(16,185,129,.22)}
.status-pending,.status-warning,.status-under-review,.status-processing{background:rgba(245,158,11,.11);color:var(--warning);border-color:rgba(245,158,11,.22)}
.status-failed,.status-cancelled,.status-rejected,.status-not-ready,.status-open{background:rgba(244,63,94,.11);color:var(--danger);border-color:rgba(244,63,94,.22)}

/* Footer */
.site-footer{background:linear-gradient(180deg,transparent,rgba(3,7,18,.42));border-color:var(--line)}
html[data-theme="light"] .site-footer{background:linear-gradient(180deg,transparent,rgba(226,232,240,.70))}
.footer-links a{transition:color .2s ease,transform .2s ease}
.footer-links a:hover{color:var(--text);transform:translateX(3px)}
.footer-bottom{border-color:var(--line)}

/* Admin and client portal */
.admin-body{background:var(--bg);color:var(--text)}
.sidebar{background:var(--sidebar-bg);border-color:var(--line);box-shadow:16px 0 45px rgba(0,0,0,.15)}
html[data-theme="light"] .sidebar{box-shadow:12px 0 38px rgba(15,23,42,.07)}
.side-label{color:var(--muted)}
.side-label>.premium-icon{color:var(--accent-strong)}
.side-nav a{color:var(--muted);border:1px solid transparent;transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}
.side-nav a:hover{color:var(--text);background:var(--surface-hover);border-color:rgba(139,92,246,.12);transform:translateX(2px)}
.side-nav a.active{color:#fff;background:linear-gradient(100deg,rgba(124,58,237,.88),rgba(79,70,229,.70));border-color:rgba(196,181,253,.28);box-shadow:0 10px 28px rgba(79,70,229,.20)}
html[data-theme="light"] .side-nav a.active{color:#fff}
.avatar{color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary2));box-shadow:0 8px 22px rgba(99,102,241,.24)}
.stat-card{border-color:var(--line);background:linear-gradient(145deg,var(--surface-highlight),transparent 42%),linear-gradient(145deg,var(--panel-solid),var(--panel));box-shadow:var(--shadow-sm)}
.stat-card:after{background:var(--primary);opacity:.16}
.stat-card strong{color:var(--text)}
.timeline-dot{background:linear-gradient(var(--primary),var(--primary2));box-shadow:0 0 0 5px var(--focus)}
.chat-bubble{background:var(--panel-soft);border-color:var(--line)}
.chat-bubble.admin{background:rgba(109,40,217,.16);border-color:rgba(139,92,246,.25)}
.code-block{background:#050814;border-color:var(--line);color:#ddd6fe}
html[data-theme="light"] .code-block{background:#111827;color:#e0e7ff}
.toast{background:var(--panel-solid);border-color:var(--line-strong);box-shadow:var(--shadow-md);color:var(--text)}
.toast span{color:var(--muted)}
.notification-badge{background:linear-gradient(135deg,#fb7185,#e11d48);border:2px solid var(--panel-solid);box-shadow:0 4px 14px rgba(225,29,72,.25)}

/* Authentication */
.auth-page{position:relative;background-color:transparent!important;background-size:cover!important}
.auth-card{background:linear-gradient(145deg,var(--surface-highlight),transparent 45%),var(--panel)!important;border-color:var(--line)!important;box-shadow:var(--shadow)!important;color:var(--text);backdrop-filter:blur(24px) saturate(130%)!important}
.auth-theme-toggle{position:fixed;top:20px;right:20px;z-index:5}
.auth-links a{color:var(--accent-strong);font-weight:750}
.auth-links a:hover{text-decoration:underline}

/* Responsive public site */
@media(max-width:1100px){
  .nav{gap:18px}
  .nav-links{gap:16px}
  .brand{min-width:205px}
  .brand img{width:205px}
}

html[data-theme="light"] .portfolio-browser-card{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,245,249,.98));border-color:rgba(79,70,229,.18);box-shadow:0 28px 70px rgba(30,41,59,.14),inset 0 1px #fff}
html[data-theme="light"] .portfolio-browser-top{background:rgba(79,70,229,.045);border-bottom-color:rgba(79,70,229,.12)}
html[data-theme="light"] .portfolio-open{background:rgba(79,70,229,.09);border-color:rgba(79,70,229,.18)}
@media(max-width:980px){
  .nav-links{
    top:calc(82px + env(safe-area-inset-top));
    left:12px;right:12px;
    max-height:calc(100dvh - 100px);
    overflow-y:auto;
    padding:14px;
    gap:4px;
    background:var(--panel-solid);
    border-color:var(--line-strong);
    box-shadow:var(--shadow);
    -webkit-backdrop-filter:blur(22px);
    backdrop-filter:blur(22px);
  }
  .nav-links a{padding:12px 13px;border-radius:12px}
  .nav-links a:after{display:none}
  .nav-links a:hover,.nav-links a.active{background:var(--surface-hover)}
  .hero-grid,.detail-grid,.cart-grid{gap:32px}
  .admin-grid{min-width:0}
}
@media(max-width:760px){
  .section{padding:54px 0}
  .section-head{gap:14px}
  .card-body,.form-card,.cart-summary{padding:20px}
  .table{min-width:650px}
  .hero-actions .btn{flex:1 1 190px}
}
@media(max-width:640px){
  .container{width:min(100% - 24px,var(--max))}
  .site-header{top:0}
  .nav{height:70px}
  .brand img{width:min(170px,44vw);max-height:52px}
  .nav-actions{gap:7px}
  .nav-actions .icon-btn{width:39px;height:39px;border-radius:12px}
  .nav-links{top:72px}
  .hero{padding:52px 0 40px}
  .hero h1,.page-hero h1{font-size:clamp(38px,12vw,50px);letter-spacing:-.045em}
  .hero p{font-size:16px}
  .hero-card{min-height:320px;border-radius:24px;padding:20px}
  .metric-row{gap:10px}
  .page-hero{padding:48px 0 30px}
  .section-head h2{font-size:34px}
  .gallery-main img{height:min(78vw,350px)}
  .product-info h1{font-size:34px}
  .filter-bar{padding:12px}
  .filter-bar .field{min-width:100%}
  .footer-grid{gap:28px}
  .footer-bottom{line-height:1.8}
}
@media(max-width:420px){
  .container{width:min(100% - 18px,var(--max))}
  .brand img{width:min(145px,40vw)}
  .nav-actions{gap:5px}
  .nav-actions .icon-btn{width:37px;height:37px}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .card-body,.form-card,.cart-summary,.panel{padding:16px}
  .premium-heading{align-items:flex-start!important}
  .table-actions .btn,.action-row .btn{min-width:0}
}

/* Responsive admin/client portal */
@media(max-width:1100px){
  .admin-content{max-width:100%}
  .stats-grid{gap:14px}
}
@media(max-width:820px){
  body.sidebar-open{overflow:hidden;touch-action:none}
  .sidebar{width:min(292px,86vw);box-shadow:34px 0 80px rgba(0,0,0,.42)}
  html[data-theme="light"] .sidebar{box-shadow:30px 0 70px rgba(15,23,42,.22)}
  .admin-top{height:70px;padding:0 14px;gap:10px}
  .admin-top>div:not(.top-spacer):not(.top-user){min-width:0}
  .admin-top>div:not(.top-spacer):not(.top-user) strong{display:block;max-width:31vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-content{padding:18px 14px}
  .admin-page-head{margin-bottom:18px}
  .panel-head{align-items:flex-start;flex-wrap:wrap}
  .table-wrap{margin-inline:0}
}
@media(max-width:560px){
  .admin-top{height:64px;padding:0 10px;gap:7px}
  .admin-top .icon-btn{width:38px;height:38px;border-radius:11px}
  .admin-top form .btn{padding:8px 10px;font-size:12px;min-height:36px}
  .admin-content{padding:13px 10px}
  .admin-page-head h1{font-size:26px}
  .admin-page-head .action-row{width:100%}
  .admin-page-head .action-row>.btn{flex:1 1 140px}
  .stats-grid{gap:10px}
  .stat-card{padding:17px;border-radius:16px}
  .stat-card strong{font-size:25px}
  .panel{border-radius:17px}
  .admin-form-grid{gap:13px}
  .table{min-width:620px}
  .section-row{padding:13px;gap:12px}
  .toast-stack{left:10px;right:10px;bottom:10px}
  .toast{width:100%}
  .auth-page{padding:18px!important}
  .auth-card{padding:25px 18px!important;border-radius:22px!important}
  .auth-logo{width:min(260px,78vw)!important}
  .auth-theme-toggle{top:12px;right:12px}
}
@media(max-width:390px){
  .admin-top>div:not(.top-spacer):not(.top-user){display:none}
  .admin-top .top-spacer{display:block}
  .admin-top form .btn{font-size:0;width:38px;padding:0}
  .admin-top form .btn .premium-icon{width:17px;height:17px}
  .stats-grid{grid-template-columns:1fr}
  .admin-page-head .action-row{display:grid;grid-template-columns:1fr}
  .admin-page-head .action-row>.btn{width:100%}
}

/* Accessibility and motion */

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media print{
  body{background:#fff!important;color:#111!important}
  .site-header,.site-footer,.sidebar,.admin-top,.moving-grid,.auth-theme-toggle{display:none!important}
  .admin-main{grid-column:1!important}
  .admin-content{padding:0!important;max-width:none!important}
  .card,.panel,.form-card,.table-wrap{box-shadow:none!important;background:#fff!important;border-color:#ddd!important}
}

/* =========================================================
   Premium responsive moving background — July 2026
   Lightweight transform-only animation for every layout.
   ========================================================= */
:root{
  --motion-bg-a:#050814;
  --motion-bg-b:#0b1022;
  --motion-grid:rgba(167,139,250,.095);
  --motion-dot:rgba(196,181,253,.18);
  --motion-orb-one:rgba(124,58,237,.58);
  --motion-orb-two:rgba(37,99,235,.45);
  --motion-orb-three:rgba(219,39,119,.32);
  --motion-orb-four:rgba(6,182,212,.25);
}
html[data-theme="light"]{
  --motion-bg-a:#f8faff;
  --motion-bg-b:#f4f0ff;
  --motion-grid:rgba(109,40,217,.065);
  --motion-dot:rgba(79,70,229,.10);
  --motion-orb-one:rgba(139,92,246,.22);
  --motion-orb-two:rgba(59,130,246,.18);
  --motion-orb-three:rgba(236,72,153,.13);
  --motion-orb-four:rgba(6,182,212,.12);
}
html{background:var(--motion-bg-a)}
body{
  position:relative;
  min-height:100vh;
  isolation:isolate;
  background:transparent!important;
}
/* Hide the older background effects so animation systems never overlap. */
body::before,body::after,.moving-grid{display:none!important}
.premium-motion-bg{
  position:fixed;
  inset:0;
  z-index:-1;
  overflow:hidden;
  pointer-events:none;
  contain:strict;
  background:
    radial-gradient(circle at 50% 118%,rgba(124,58,237,.13),transparent 42%),
    linear-gradient(145deg,var(--motion-bg-a),var(--motion-bg-b));
}
html[data-theme="light"] .premium-motion-bg{
  background:
    radial-gradient(circle at 50% 118%,rgba(109,40,217,.08),transparent 44%),
    linear-gradient(145deg,var(--motion-bg-a),var(--motion-bg-b));
}
.premium-motion-bg::before,
.premium-motion-bg::after{
  content:"";
  position:absolute;
  inset:-12%;
  pointer-events:none;
}
.premium-motion-bg::before{
  background-image:
    linear-gradient(var(--motion-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--motion-grid) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),rgba(0,0,0,.20) 76%,transparent 100%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),rgba(0,0,0,.20) 76%,transparent 100%);
  opacity:.54;
  animation:premiumGridDrift 32s linear infinite;
}
.premium-motion-bg::after{
  background-image:radial-gradient(circle,var(--motion-dot) 0 1.2px,transparent 1.7px);
  background-size:34px 34px;
  -webkit-mask-image:radial-gradient(ellipse at center,black 0,rgba(0,0,0,.65) 45%,transparent 78%);
  mask-image:radial-gradient(ellipse at center,black 0,rgba(0,0,0,.65) 45%,transparent 78%);
  opacity:.48;
  animation:premiumDotsBreathe 12s ease-in-out infinite alternate;
}
.premium-motion-orb{
  position:absolute;
  display:block;
  border-radius:999px;
  filter:blur(78px);
  opacity:.82;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.premium-motion-orb:nth-child(1){
  width:clamp(300px,44vw,720px);
  aspect-ratio:1;
  left:-18%;
  top:-28%;
  background:radial-gradient(circle,var(--motion-orb-one),transparent 68%);
  animation:premiumOrbOne 24s ease-in-out infinite alternate;
}
.premium-motion-orb:nth-child(2){
  width:clamp(280px,42vw,680px);
  aspect-ratio:1;
  right:-20%;
  top:8%;
  background:radial-gradient(circle,var(--motion-orb-two),transparent 69%);
  animation:premiumOrbTwo 29s ease-in-out infinite alternate;
}
.premium-motion-orb:nth-child(3){
  width:clamp(260px,38vw,620px);
  aspect-ratio:1;
  left:22%;
  bottom:-36%;
  background:radial-gradient(circle,var(--motion-orb-three),transparent 68%);
  animation:premiumOrbThree 27s ease-in-out infinite alternate;
}
.premium-motion-orb:nth-child(4){
  width:clamp(220px,30vw,500px);
  aspect-ratio:1;
  right:17%;
  bottom:-28%;
  background:radial-gradient(circle,var(--motion-orb-four),transparent 68%);
  animation:premiumOrbFour 31s ease-in-out infinite alternate;
}
html[data-theme="light"] .premium-motion-orb{filter:blur(92px);opacity:.74}
@keyframes premiumGridDrift{
  to{transform:translate3d(72px,72px,0)}
}
@keyframes premiumDotsBreathe{
  from{transform:scale(1) translate3d(0,0,0);opacity:.28}
  to{transform:scale(1.045) translate3d(0,-1.5%,0);opacity:.55}
}
@keyframes premiumOrbOne{
  0%{transform:translate3d(-5%,0,0) scale(.94)}
  50%{transform:translate3d(20%,16%,0) scale(1.08)}
  100%{transform:translate3d(46%,6%,0) scale(.98)}
}
@keyframes premiumOrbTwo{
  0%{transform:translate3d(8%,-8%,0) scale(1)}
  50%{transform:translate3d(-28%,18%,0) scale(1.12)}
  100%{transform:translate3d(-12%,42%,0) scale(.96)}
}
@keyframes premiumOrbThree{
  0%{transform:translate3d(-10%,8%,0) scale(.94)}
  50%{transform:translate3d(18%,-30%,0) scale(1.1)}
  100%{transform:translate3d(40%,-8%,0) scale(1)}
}
@keyframes premiumOrbFour{
  0%{transform:translate3d(12%,12%,0) scale(.92)}
  50%{transform:translate3d(-35%,-26%,0) scale(1.08)}
  100%{transform:translate3d(-8%,-48%,0) scale(.98)}
}
/* Keep glass surfaces readable while the background moves behind them. */
.card,.panel,.form-card,.filter-bar,.cart-summary,.metric,.gallery-main,.table-wrap,.section-row,.empty,.auth-card,.sidebar,.admin-top,.site-header{
  -webkit-backdrop-filter:blur(20px) saturate(128%);
  backdrop-filter:blur(20px) saturate(128%);
}
@media(max-width:760px){
  .premium-motion-bg::before{background-size:54px 54px;opacity:.38;animation-duration:40s}
  .premium-motion-bg::after{background-size:28px 28px;opacity:.34}
  .premium-motion-orb{filter:blur(54px);opacity:.62}
  html[data-theme="light"] .premium-motion-orb{filter:blur(62px);opacity:.58}
  .premium-motion-orb:nth-child(1){width:125vw;left:-58%;top:-22%}
  .premium-motion-orb:nth-child(2){width:110vw;right:-58%;top:22%}
  .premium-motion-orb:nth-child(3){width:105vw;left:-22%;bottom:-36%}
  .premium-motion-orb:nth-child(4){display:none}
}
@media(max-width:420px){
  .premium-motion-bg::before{opacity:.28}
  .premium-motion-bg::after{opacity:.24}
  .premium-motion-orb{opacity:.52}
}
/* Mobile performance: avoid repaint-heavy fixed blur/glass effects while scrolling. */
@media(max-width:820px){
  .premium-motion-bg,
  html[data-theme="light"] .premium-motion-bg{
    background:
      radial-gradient(circle at 12% 12%,rgba(139,92,246,.18),transparent 42%),
      radial-gradient(circle at 88% 78%,rgba(6,182,212,.12),transparent 44%),
      linear-gradient(145deg,var(--motion-bg-a),var(--motion-bg-b));
    contain:strict;
  }
  .premium-motion-bg::before,
  .premium-motion-bg::after,
  .premium-motion-orb{display:none!important}
  .card,.panel,.form-card,.filter-bar,.cart-summary,.metric,.gallery-main,.table-wrap,.section-row,.empty,.auth-card,.sidebar,.admin-top,.site-header{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .premium-motion-bg::before,
  .premium-motion-bg::after,
  .premium-motion-orb{animation:none!important;will-change:auto}
  .premium-motion-bg::before{transform:none}
  .premium-motion-bg::after{transform:none;opacity:.30}
}

/* Theme-aware desktop mouse cursor.
   Uses the website's purple/blue accent as a normal pointer — no circular ring. */
html.custom-cursor-active,
html.custom-cursor-active body,
html.custom-cursor-active body *{
  cursor:none!important;
}
.sd-theme-cursor{
  position:fixed;
  top:0;
  left:0;
  width:1px;
  height:1px;
  overflow:visible;
  z-index:2147483647;
  pointer-events:none!important;
  opacity:0;
  visibility:hidden;
  transform:translate3d(-120px,-120px,0);
  transition:opacity .10s ease,visibility 0s linear .10s;
  will-change:transform;
}
.sd-theme-cursor.is-visible{
  opacity:1;
  visibility:visible;
  transition-delay:0s;
}
.sd-theme-cursor-ring,
.sd-theme-cursor-dot{
  position:absolute;
  top:0;
  left:0;
  display:block;
  pointer-events:none!important;
}
/* Main pointer: follows --primary and --primary2 from the active site theme. */
.sd-theme-cursor-ring{
  width:20px;
  height:28px;
  border:0;
  border-radius:2px 11px 8px 11px;
  background:linear-gradient(145deg,var(--primary,#8b5cf6) 0%,var(--primary2,#6366f1) 100%);
  clip-path:polygon(0 0,100% 68%,59% 70%,79% 100%,62% 100%,43% 72%,16% 100%);
  -webkit-clip-path:polygon(0 0,100% 68%,59% 70%,79% 100%,62% 100%,43% 72%,16% 100%);
  box-shadow:0 3px 12px rgba(99,102,241,.34);
  transform:translate(-2px,-2px) scale(1);
  transform-origin:2px 2px;
  transition:width .13s ease,height .13s ease,transform .09s ease,filter .13s ease,background .13s ease;
}
.sd-theme-cursor-dot{display:none!important}
.sd-theme-cursor.is-action .sd-theme-cursor-ring{
  width:23px;
  height:32px;
  background:linear-gradient(145deg,var(--accent-strong,var(--primary,#8b5cf6)) 0%,var(--primary2,#6366f1) 100%);
  filter:brightness(1.13) saturate(1.12);
}
.sd-theme-cursor.is-text .sd-theme-cursor-ring{
  width:4px;
  height:27px;
  border-radius:999px;
  clip-path:none;
  -webkit-clip-path:none;
  background:linear-gradient(180deg,var(--primary,#8b5cf6),var(--primary2,#6366f1));
  box-shadow:-5px 0 0 -3px var(--primary,#8b5cf6),5px 0 0 -3px var(--primary2,#6366f1),0 0 12px rgba(99,102,241,.32);
  transform:translate(-2px,-13px) scale(1);
}
.sd-theme-cursor.is-pressed .sd-theme-cursor-ring{transform:translate(-2px,-2px) scale(.82)}
.sd-theme-cursor.is-text.is-pressed .sd-theme-cursor-ring{transform:translate(-2px,-13px) scale(.82)}
html[data-theme="light"] .sd-theme-cursor-ring{
  filter:saturate(1.12);
  box-shadow:0 3px 11px rgba(79,70,229,.28);
}
html[data-theme="light"] .sd-theme-cursor.is-text .sd-theme-cursor-ring{
  box-shadow:-5px 0 0 -3px var(--primary,#6d28d9),5px 0 0 -3px var(--primary2,#4f46e5),0 0 10px rgba(79,70,229,.25);
}
@media (prefers-reduced-motion:reduce){
  .sd-theme-cursor,
  .sd-theme-cursor-ring,
  .sd-theme-cursor-dot{transition:none!important}
}


/* Semantics Digital premium imagery and live portfolio — v1.1 */
.page-hero{position:relative;isolation:isolate;overflow:hidden;background-image:linear-gradient(100deg,rgba(6,8,20,.96),rgba(17,10,42,.80)),url('../img/premium/hero-digital-marketing.webp');background-size:cover;background-position:center;min-height:390px;display:flex;align-items:center}
.page-hero.page-hero-image{background-image:linear-gradient(100deg,rgba(6,8,20,.96),rgba(17,10,42,.72)),var(--page-hero-image),url('../img/premium/hero-digital-marketing.webp')}
.page-hero:after{content:"";position:absolute;inset:auto -10% -60% 30%;height:380px;background:radial-gradient(circle,rgba(124,58,237,.34),transparent 68%);z-index:-1}
.page-hero .container{position:relative;z-index:2}.page-hero h1{max-width:900px}.page-hero p{max-width:720px;font-size:clamp(17px,2vw,21px)}
.premium-home-hero{position:relative}.hero-image-card{min-height:560px}.hero-image-card img,.premium-about-section .hero-card img{object-position:center}
.premium-service-card{overflow:hidden}.premium-service-card .card-media{height:245px}.premium-service-card .card-media img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.premium-service-card:hover .card-media img{transform:scale(1.06)}
.service-image-grid{align-items:stretch}.premium-service-main{min-height:480px}.premium-service-main img{width:100%;height:100%;max-height:600px;object-fit:cover}
.portfolio-showcase-section{position:relative}.portfolio-showcase-section:before{content:"";position:absolute;inset:5% 0 auto;height:70%;pointer-events:none;background:radial-gradient(circle at 50% 35%,rgba(124,58,237,.15),transparent 62%)}
.portfolio-head{position:relative}.portfolio-live-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.portfolio-browser-card{overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:linear-gradient(145deg,rgba(24,25,48,.94),rgba(9,10,25,.98));box-shadow:0 28px 80px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.08);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.portfolio-browser-card:hover{transform:translateY(-7px);border-color:rgba(167,139,250,.45);box-shadow:0 38px 100px rgba(0,0,0,.5),0 0 40px rgba(124,58,237,.12)}
.portfolio-browser-top{min-height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}
.browser-dots{display:flex;gap:6px}.browser-dots span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.28)}.browser-dots span:first-child{background:#fb7185}.browser-dots span:nth-child(2){background:#fbbf24}.browser-dots span:nth-child(3){background:#34d399}
.portfolio-brand-lockup{display:flex;align-items:center;gap:11px;min-width:0}.portfolio-client-logo{width:42px;height:42px;border-radius:11px;object-fit:contain;padding:5px;background:#fff}.portfolio-brand-lockup div{min-width:0}.portfolio-brand-lockup strong,.portfolio-brand-lockup small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portfolio-brand-lockup small{color:var(--muted);font-size:12px;margin-top:3px}
.portfolio-open{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:rgba(124,58,237,.18);border:1px solid rgba(167,139,250,.25);font-size:20px}.portfolio-open:hover{background:rgba(124,58,237,.32)}
.portfolio-iframe-wrap{position:relative;height:520px;background:#fff}.portfolio-iframe-wrap iframe{display:block;width:100%;height:100%;border:0;background:#fff}.portfolio-live-badge{position:absolute;left:14px;bottom:14px;display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;background:rgba(7,10,22,.9);border:1px solid rgba(255,255,255,.18);font-size:12px;box-shadow:0 10px 30px rgba(0,0,0,.3)}.portfolio-live-badge span{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.15)}
.portfolio-card-footer{padding:18px}.portfolio-card-footer>p{color:var(--muted);margin:14px 0 0}.portfolio-agency-badge{display:flex;align-items:center;gap:10px}.portfolio-agency-badge img{width:44px;height:44px;object-fit:contain}.portfolio-agency-badge span{font-size:13px;color:var(--muted)}.portfolio-agency-badge strong{color:var(--text)}
.portfolio-embed-note{position:relative;text-align:center;color:var(--muted);font-size:13px;margin:22px auto 0;max-width:800px}.portfolio-empty-premium{position:relative;display:flex;align-items:center;justify-content:center;gap:22px;padding:45px;border-radius:25px;border:1px dashed rgba(167,139,250,.35);background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(255,255,255,.025))}.portfolio-empty-premium img{width:95px;height:70px;object-fit:contain}.portfolio-empty-premium h3{font-size:26px;margin:0 0 8px}.portfolio-empty-premium p{margin:0;color:var(--muted);max-width:670px}
.premium-cta-card{text-align:center;padding:70px 25px;background:linear-gradient(120deg,rgba(124,58,237,.38),rgba(192,38,211,.13)),url('../img/premium/hero-digital-marketing.webp') center/cover;position:relative;overflow:hidden}.premium-cta-card:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,8,20,.82),rgba(16,8,36,.65));z-index:0}.premium-cta-card>*{position:relative;z-index:1}.premium-cta-card h2{font-size:clamp(35px,5vw,58px);margin:18px 0}.premium-cta-card p{max-width:680px;margin:0 auto 25px;color:#d7d5e8}
@media(max-width:980px){.portfolio-live-grid{grid-template-columns:1fr}.portfolio-iframe-wrap{height:480px}.hero-image-card{min-height:480px}}
@media(max-width:640px){.page-hero{min-height:340px}.portfolio-browser-top{grid-template-columns:auto minmax(0,1fr) auto;gap:9px;padding:10px}.browser-dots{display:none}.portfolio-iframe-wrap{height:390px}.portfolio-empty-premium{align-items:flex-start;flex-direction:column;padding:28px}.premium-service-card .card-media{height:220px}}


/* Full hero and descriptive image overlays — v1.1.3 */
.full-bleed-home-hero{
  min-height:clamp(760px,calc(100svh - 82px),980px);
  padding:clamp(86px,10vh,130px) 0 70px;
  display:flex;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
  background-image:linear-gradient(90deg,rgba(4,7,17,.96) 0%,rgba(7,9,23,.88) 42%,rgba(16,8,38,.48) 72%,rgba(6,8,20,.65) 100%),var(--home-hero-image),url('../img/premium/hero-digital-marketing.webp');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.full-bleed-home-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(3,5,13,.15),rgba(3,5,13,.08) 48%,rgba(3,5,13,.92));pointer-events:none}
.full-bleed-home-hero:after{content:"";position:absolute;width:720px;height:720px;right:-160px;top:-170px;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(124,58,237,.30),transparent 66%);filter:blur(12px)}
.home-hero-shell{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;min-height:640px}
.home-hero-copy{max-width:920px}
.full-bleed-home-hero h1{max-width:1000px;font-size:clamp(54px,7.4vw,104px);line-height:.98;margin:24px 0 22px;text-wrap:balance}
.home-hero-lead{font-size:clamp(18px,2vw,24px)!important;line-height:1.55;max-width:790px!important;color:#e5e7eb!important;text-shadow:0 2px 18px rgba(0,0,0,.55)}
.home-hero-support{max-width:720px!important;font-size:16px!important;color:#bfc4d5!important}
.hero-glass-button{background:rgba(10,13,28,.62);border-color:rgba(255,255,255,.22);backdrop-filter:blur(14px);color:#fff}
.hero-metric-row{max-width:760px}
.hero-metric-row .metric{background:rgba(8,11,24,.60);border-color:rgba(255,255,255,.16);backdrop-filter:blur(16px)}
.hero-metric-row .metric span{color:#c9cede}
.hero-image-context{position:absolute;right:0;bottom:10px;width:min(390px,38vw);padding:22px 24px;border-radius:22px;background:rgba(8,10,24,.74);border:1px solid rgba(255,255,255,.18);box-shadow:0 25px 70px rgba(0,0,0,.38);backdrop-filter:blur(18px)}
.hero-image-context strong{display:block;font-size:22px;line-height:1.2;margin:9px 0;color:#fff}.hero-image-context p{font-size:14px!important;line-height:1.55;margin:0;color:#c9cede!important}
.hero-scroll-cue{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:10px;color:#d7dbea;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;z-index:3}.hero-scroll-cue span{width:8px;height:8px;border-radius:50%;background:#a78bfa;box-shadow:0 0 0 7px rgba(167,139,250,.14)}

.page-hero,.page-hero.page-hero-image{min-height:clamp(560px,72vh,760px);padding:110px 0 76px;text-align:left;background-position:center;display:flex;align-items:center}
.page-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,6,15,.05),rgba(4,6,15,.68))}
.page-hero .container{width:min(1180px,calc(100% - 34px))}.page-hero h1{font-size:clamp(52px,7vw,88px);max-width:970px;text-wrap:balance}.page-hero p{margin:0;max-width:820px;color:#d9ddec;font-size:clamp(18px,2vw,23px);text-shadow:0 2px 16px rgba(0,0,0,.55)}
.page-hero-context{display:inline-block;max-width:760px;margin-top:24px;padding:13px 16px;border-radius:14px;background:rgba(8,11,24,.66);border:1px solid rgba(255,255,255,.17);color:#cfd4e4;font-size:14px;backdrop-filter:blur(14px)}.page-hero-context strong{color:#fff}

.premium-captioned-media{position:relative;height:330px!important;display:block;overflow:hidden;background:#0a0d18}
.product-captioned-media{height:340px!important}
.premium-captioned-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .4s ease}
.premium-captioned-media .media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,6,15,.04) 15%,rgba(4,6,15,.25) 44%,rgba(4,6,15,.94) 100%);z-index:1;transition:background .35s ease}
.premium-captioned-media .media-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:25px 24px 23px;color:#fff}
.visual-category{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:rgba(139,92,246,.84);border:1px solid rgba(255,255,255,.22);color:#fff;font-size:10px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;box-shadow:0 8px 24px rgba(76,29,149,.26)}
.media-caption h3{font-size:clamp(23px,2.2vw,31px);line-height:1.08;margin:11px 0 8px;color:#fff;text-shadow:0 3px 15px rgba(0,0,0,.55)}
.media-caption p{margin:0;color:#e2e5ef;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 2px 12px rgba(0,0,0,.7)}
.premium-service-card:hover .premium-captioned-media img,.premium-product-card:hover .premium-captioned-media img{transform:scale(1.075);filter:saturate(1.08)}
.premium-service-card:hover .media-shade,.premium-product-card:hover .media-shade{background:linear-gradient(180deg,rgba(4,6,15,.04) 10%,rgba(23,8,54,.22) 42%,rgba(4,6,15,.96) 100%)}
.service-card-body{display:flex;flex-direction:column;gap:15px}.service-card-heading{display:flex;align-items:center;gap:13px}.service-card-heading small,.product-purpose-label span{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.service-card-heading strong,.product-purpose-label strong{display:block;color:var(--text);font-size:15px;margin-top:2px}.service-purpose{margin:0!important}.product-purpose-label{padding-bottom:12px;border-bottom:1px solid var(--line)}

.captioned-detail-image{position:relative;isolation:isolate}.captioned-detail-image:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(4,6,15,.94));pointer-events:none}.detail-image-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:28px;color:#fff}.detail-image-caption h2{font-size:clamp(28px,4vw,46px);line-height:1.05;margin:12px 0 8px}.detail-image-caption p{margin:0;max-width:720px;color:#e3e6ef}.service-aside-category{display:block;margin-top:14px;color:var(--accent);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.about-image-card{min-height:500px!important}.about-image-card .hero-card-content p{color:#d5d9e5;margin-bottom:0;max-width:530px}

html[data-theme="light"] .full-bleed-home-hero,html[data-theme="light"] .page-hero{color:#fff}
html[data-theme="light"] .full-bleed-home-hero .gradient-text,html[data-theme="light"] .page-hero .gradient-text{background:linear-gradient(100deg,#fff,#ddd6fe 48%,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}

@media(max-width:980px){
  .full-bleed-home-hero{min-height:820px;background-position:62% center}.home-hero-shell{min-height:680px}.home-hero-copy{max-width:760px;padding-bottom:145px}.hero-image-context{left:0;right:auto;bottom:8px;width:min(560px,92%)}.hero-scroll-cue{display:none}
  .premium-captioned-media,.product-captioned-media{height:320px!important}
}
@media(max-width:640px){
  .full-bleed-home-hero{min-height:720px;padding:72px 0 42px;background-position:66% center}.full-bleed-home-hero h1{font-size:clamp(43px,13vw,59px)}.home-hero-shell{min-height:610px}.home-hero-copy{padding-bottom:170px}.home-hero-lead{font-size:17px!important}.hero-metric-row{grid-template-columns:repeat(3,1fr);gap:8px}.hero-metric-row .metric{padding:12px 9px}.hero-metric-row .metric strong{font-size:18px}.hero-metric-row .metric span{font-size:10px;line-height:1.25}.hero-image-context{width:100%;padding:17px 18px}.hero-image-context strong{font-size:18px}.hero-image-context p{font-size:12px!important}
  .page-hero,.page-hero.page-hero-image{min-height:520px;padding:86px 0 60px}.page-hero h1{font-size:clamp(43px,12vw,59px)}.page-hero p{font-size:17px}.page-hero-context{font-size:12px}
  .premium-captioned-media,.product-captioned-media{height:310px!important}.media-caption{padding:20px!important}.media-caption h3{font-size:25px}.about-image-card{min-height:430px!important}.detail-image-caption{padding:20px}.detail-image-caption h2{font-size:30px}.detail-image-caption p{font-size:13px}
}
@media(max-width:420px){
  .full-bleed-home-hero{min-height:760px}.home-hero-copy{padding-bottom:190px}.hero-metric-row{grid-template-columns:1fr}.hero-metric-row .metric{display:flex;align-items:center;gap:10px}.hero-metric-row .metric strong{font-size:17px}.premium-captioned-media,.product-captioned-media{height:300px!important}
}


/* Theme cache/render stability hotfix — v1.1.3 */
.premium-services-section,.premium-products-section,.portfolio-showcase-section,.premium-about-section{position:relative;clear:both}
.service-image-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;width:100%;align-items:stretch}
.premium-service-card,.premium-product-card{display:flex;flex-direction:column;min-width:0;width:100%;height:100%;transform:none}
.premium-service-card .card-body,.premium-product-card .card-body{position:relative;z-index:3;flex:1}
.premium-captioned-media{width:100%;flex:0 0 auto}
.premium-captioned-media img{display:block;opacity:1;visibility:visible}
.site-footer{position:relative;clear:both;z-index:2}
@media(max-width:980px){.service-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:640px){.service-image-grid{grid-template-columns:1fr!important}}
