/* =========================================================
   LC ADS — Design tokens
   ========================================================= */
:root{
	--lc-navy: #0b1330;
	--lc-navy-2: #0e1938;
	--lc-navy-3: #101c40;
	--lc-blue: #2f6bff;
	--lc-blue-soft: #6f9bff;
	--lc-orange: #ff7a1a;
	--lc-orange-soft: #ffab6b;
	--lc-ink: #f4f6ff;
	--lc-muted: #9aa7cf;
	--lc-muted-2: #6d7aa3;
	--lc-gold: #d1ac57;
	--lc-gold-soft: #e8cf95;

	--lc-glass-bg: rgba(255,255,255,.055);
	--lc-glass-bg-strong: rgba(255,255,255,.09);
	--lc-glass-border: rgba(255,255,255,.14);
	--lc-glass-blur: 20px;
	--lc-radius: 22px;
	--lc-radius-sm: 14px;

	--font-display: 'Space Grotesk', 'Segoe UI', sans-serif;
	--font-body: 'Plus Jakarta Sans', 'Segoe UI', sans-serif;
	--font-mono: 'JetBrains Mono', ui-monospace, monospace;
	--font-script: 'Playfair Display', Georgia, serif;

	--shell-width: 1220px;
	--ease: cubic-bezier(.22,.9,.3,1);
}

/* =========================================================
   Reset & base
   ========================================================= */
*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
	margin:0;
	background:
		radial-gradient(ellipse 900px 600px at 12% -10%, rgba(47,107,255,.16), transparent 60%),
		radial-gradient(ellipse 800px 700px at 100% 10%, rgba(255,122,26,.10), transparent 55%),
		var(--lc-navy);
	color:var(--lc-ink);
	font-family:var(--font-body);
	font-size:16px;
	line-height:1.6;
	-webkit-font-smoothing:antialiased;
	overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
ul,ol{ margin:0; padding:0; list-style:none; }
h1,h2,h3,h4{ font-family:var(--font-display); margin:0; font-weight:600; letter-spacing:-.01em; }
p{ margin:0; }
button{ font-family:inherit; cursor:pointer; }
input,textarea,select{ font-family:inherit; }

.lc-shell{ max-width:var(--shell-width); margin:0 auto; padding:0 28px; position:relative; }

@media (prefers-reduced-motion: reduce){
	*{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}

/* Film-grain noise overlay for texture on the flat navy */
.lc-noise{
	position:fixed; inset:0; z-index:2; pointer-events:none; opacity:.035; mix-blend-mode:overlay;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* Scroll progress bar — reads as a rising signal line, echoes the logo arrow */
.lc-progress{
	position:fixed; top:0; left:0; right:0; height:3px; z-index:1000; background:rgba(255,255,255,.06);
}
.lc-progress span{
	display:block; height:100%; width:0%;
	background:linear-gradient(90deg, var(--lc-blue), var(--lc-orange));
	box-shadow:0 0 12px rgba(255,122,26,.6);
	transition:width .12s linear;
}

/* =========================================================
   Glass utility
   ========================================================= */
.lc-glass{
	background:var(--lc-glass-bg);
	border:1px solid var(--lc-glass-border);
	border-radius:var(--lc-radius);
	backdrop-filter:blur(var(--lc-glass-blur)) saturate(140%);
	-webkit-backdrop-filter:blur(var(--lc-glass-blur)) saturate(140%);
	box-shadow:0 20px 60px -25px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.08);
	position:relative;
}
.lc-glass::before{
	content:"";
	position:absolute; inset:0; border-radius:inherit; padding:1px;
	background:linear-gradient(135deg, rgba(255,255,255,.35), rgba(255,255,255,0) 40%, rgba(255,255,255,.06));
	-webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite:xor; mask-composite:exclude;
	pointer-events:none;
}

/* =========================================================
   Eyebrow / headings
   ========================================================= */
.lc-eyebrow{
	display:inline-flex; align-items:center; gap:10px;
	font-family:var(--font-mono); font-size:12.5px; letter-spacing:.14em; text-transform:uppercase;
	color:var(--lc-orange-soft); margin-bottom:16px;
}
.lc-eyebrow__dash{ width:22px; height:2px; background:linear-gradient(90deg,var(--lc-orange),var(--lc-blue)); border-radius:2px; }

/* Bigger, bolder eyebrow — used for "About Me" and "My Creative Approach" */
.lc-eyebrow--emphasis{
	font-size:clamp(15px,2vw,19px); font-weight:800; letter-spacing:.1em; color:var(--lc-ink);
}
.lc-eyebrow--emphasis .lc-eyebrow__dash{ width:32px; height:3px; }

.lc-h2{ font-size:clamp(28px,4vw,44px); line-height:1.12; color:var(--lc-ink); }
.lc-body p{ color:var(--lc-muted); margin-bottom:14px; }
.lc-body p:last-child{ margin-bottom:0; }

.lc-section{ position:relative; padding:120px 0; }
.lc-section--tint{ background:linear-gradient(180deg, transparent, rgba(255,255,255,.02) 15%, rgba(255,255,255,.02) 85%, transparent); }
.lc-section__head{ max-width:680px; margin:0 0 56px; }
.lc-section__head--split{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:24px; max-width:none; }
.lc-section__lede{ color:var(--lc-muted); max-width:380px; }

/* =========================================================
   Buttons
   ========================================================= */
.lc-btn{
	display:inline-flex; align-items:center; gap:10px; justify-content:center;
	padding:15px 26px; border-radius:100px; font-weight:600; font-size:15px;
	border:1px solid transparent; transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .35s;
	white-space:nowrap;
}
.lc-btn--primary{
	background:linear-gradient(120deg, var(--lc-blue), var(--lc-orange));
	color:#fff; box-shadow:0 14px 34px -12px rgba(255,122,26,.55);
}
.lc-btn--primary:hover{ transform:translateY(-3px); box-shadow:0 20px 44px -14px rgba(255,122,26,.7); }
.lc-btn--ghost{ background:var(--lc-glass-bg); border-color:var(--lc-glass-border); color:var(--lc-ink); backdrop-filter:blur(10px); }
.lc-btn--ghost:hover{ background:var(--lc-glass-bg-strong); transform:translateY(-3px); }
.lc-btn--sm{ padding:10px 20px; font-size:13.5px; }

/* =========================================================
   Top bar
   ========================================================= */
.lc-topbar{
	background:rgba(0,0,0,.28); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
	border-bottom:1px solid rgba(255,255,255,.06); font-size:13px; position:relative; z-index:60;
}
.lc-topbar__inner{ display:flex; align-items:center; gap:26px; height:38px; }
.lc-topbar__item{ display:flex; align-items:center; gap:6px; color:var(--lc-muted); transition:color .25s; }
.lc-topbar__item:hover{ color:var(--lc-ink); }
.lc-topbar__item--static{ cursor:default; }
.lc-topbar__item--static:hover{ color:var(--lc-muted); }
.lc-topbar__avail{ margin-left:auto; display:flex; align-items:center; gap:8px; color:var(--lc-muted); }
.lc-dot{ width:6px; height:6px; border-radius:50%; background:#3ddc84; box-shadow:0 0 0 0 rgba(61,220,132,.6); animation:lcPulse 2s infinite; }
@keyframes lcPulse{ 0%{box-shadow:0 0 0 0 rgba(61,220,132,.55);} 70%{box-shadow:0 0 0 8px rgba(61,220,132,0);} 100%{box-shadow:0 0 0 0 rgba(61,220,132,0);} }
@media (max-width:780px){ .lc-topbar__avail, .lc-topbar__item:nth-child(2), .lc-topbar__item--static{ display:none; } }

/* =========================================================
   Navigation
   ========================================================= */
.lc-nav{
	position:sticky; top:0; z-index:90; padding:10px 0;
	background:rgba(11,19,48,.55);
	backdrop-filter:blur(var(--lc-glass-blur)) saturate(140%);
	-webkit-backdrop-filter:blur(var(--lc-glass-blur)) saturate(140%);
	border-bottom:1px solid var(--lc-glass-border);
	box-shadow:0 10px 30px -20px rgba(0,0,0,.6);
	transition:background .35s, box-shadow .35s, padding .35s;
}
.lc-nav.is-scrolled{
	background:rgba(11,19,48,.82); padding:8px 0;
	box-shadow:0 14px 34px -18px rgba(0,0,0,.7);
}
.lc-nav__inner{ display:flex; align-items:center; gap:28px; }
.lc-nav__brand{ display:flex; align-items:center; }
.lc-nav__brand img{ height:44px; width:auto; }
.lc-nav__logo-fallback{ height:44px; }
.lc-nav__menu{ margin-left:auto; }
.lc-nav__list{ display:flex; gap:30px; font-size:14.5px; font-weight:500; }
.lc-nav__list a{ color:var(--lc-muted); position:relative; padding:6px 0; transition:color .25s; }
.lc-nav__list a:hover{ color:var(--lc-ink); }
.lc-nav__list a::after{
	content:""; position:absolute; left:0; right:100%; bottom:0; height:2px;
	background:linear-gradient(90deg,var(--lc-blue),var(--lc-orange)); transition:right .3s var(--ease); border-radius:2px;
}
.lc-nav__list a:hover::after{ right:0; }
.lc-nav__cta{ display:inline-flex; }
.lc-nav__burger{ display:none; background:none; border:none; width:38px; height:38px; flex-direction:column; align-items:center; justify-content:center; gap:5px; }
.lc-nav__burger span{ width:22px; height:2px; background:var(--lc-ink); border-radius:2px; transition:transform .3s, opacity .3s; }
.lc-nav__burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.lc-nav__burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.lc-nav__burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.lc-mobile-menu{
	max-height:0; overflow:hidden; transition:max-height .4s var(--ease);
	background:rgba(11,19,48,.96); backdrop-filter:blur(16px);
}
.lc-mobile-menu.is-open{ max-height:420px; border-top:1px solid rgba(255,255,255,.08); }
.lc-mobile-menu__list{ padding:18px 28px 6px; display:flex; flex-direction:column; gap:16px; font-size:16px; }
.lc-mobile-menu__cta{ margin:14px 28px 22px; }

@media (max-width:960px){
	.lc-nav__menu, .lc-nav__cta{ display:none; }
	.lc-nav__burger{ display:flex; }
}

/* =========================================================
   Hero
   ========================================================= */
.lc-hero{ position:relative; padding:88px 0 60px; overflow:hidden; min-height:92vh; display:flex; align-items:center; }
.lc-hero__bg{ position:absolute; inset:0; z-index:0; overflow:hidden; }
.lc-orb{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.55; animation:lcFloat 14s ease-in-out infinite; }
.lc-orb--blue{ width:520px; height:520px; background:radial-gradient(circle, var(--lc-blue), transparent 70%); top:-160px; left:-120px; }
.lc-orb--orange{ width:460px; height:460px; background:radial-gradient(circle, var(--lc-orange), transparent 70%); bottom:-180px; right:-100px; animation-delay:-6s; }
@keyframes lcFloat{ 0%,100%{ transform:translate(0,0) scale(1);} 50%{ transform:translate(30px,-24px) scale(1.06);} }
.lc-grid{
	position:absolute; inset:0;
	background-image:linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
	background-size:64px 64px;
	mask-image:radial-gradient(ellipse 60% 55% at 50% 30%, #000, transparent 75%);
}

.lc-hero__inner{ display:grid; grid-template-columns:1.05fr .95fr; gap:40px; align-items:center; z-index:1; }
.lc-hero__title{ display:flex; flex-direction:column; margin:0 0 22px; }
.lc-hero__line{ font-size:clamp(36px,5.6vw,64px); line-height:1.06; background:linear-gradient(100deg,#fff 30%, var(--lc-blue-soft) 70%, var(--lc-orange-soft)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.lc-hero__subtitle{ display:block; max-width:480px; color:var(--lc-muted); font-size:17px; margin-bottom:34px; }
.lc-hero__cta{ display:flex; flex-wrap:wrap; gap:16px; margin-bottom:46px; }

.lc-hero__stat{ display:flex; align-items:baseline; gap:6px; margin-bottom:30px; }
.lc-hero__stat-number, .lc-hero__stat-plus{ font-family:var(--font-display); font-size:40px; font-weight:700; background:linear-gradient(100deg,var(--lc-blue-soft),var(--lc-orange-soft)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.lc-hero__stat-label{ color:var(--lc-muted); font-size:14px; margin-left:8px; padding-left:14px; border-left:1px solid rgba(255,255,255,.14); }

.lc-hero__pillbar{ display:flex; flex-wrap:wrap; gap:10px; }
.lc-hero__pillbar li{
	display:flex; align-items:center; gap:7px; padding:8px 14px; border-radius:100px; font-size:12.5px; color:var(--lc-muted);
	background:var(--lc-glass-bg); border:1px solid var(--lc-glass-border);
}
.lc-hero__pillbar svg{ color:var(--lc-orange-soft); }

/* Hero visual: signature signal line + floating phone */
.lc-hero__visual{ position:relative; height:520px; display:flex; align-items:center; justify-content:center; }
.lc-signal{ position:absolute; inset:0; width:100%; height:100%; opacity:.9; }
.lc-signal path{ stroke-dasharray:900; stroke-dashoffset:900; animation:lcDraw 2.4s var(--ease) .3s forwards; }
@keyframes lcDraw{ to{ stroke-dashoffset:0; } }

.lc-phone{
	position:relative; width:230px; height:460px; border-radius:38px; padding:10px;
	background:linear-gradient(160deg, rgba(255,255,255,.14), rgba(255,255,255,.02));
	border:1px solid var(--lc-glass-border); backdrop-filter:blur(var(--lc-glass-blur));
	box-shadow:0 40px 80px -30px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.16);
	animation:lcDrift 7s ease-in-out infinite; z-index:2;
}
@keyframes lcDrift{ 0%,100%{ transform:translateY(0) rotate(-1.5deg);} 50%{ transform:translateY(-16px) rotate(1.5deg);} }
.lc-phone__notch{ position:absolute; top:10px; left:50%; transform:translateX(-50%); width:74px; height:18px; background:rgba(0,0,0,.5); border-radius:0 0 14px 14px; z-index:3; }
.lc-phone__video{ width:100%; height:100%; object-fit:cover; border-radius:28px; }
.lc-phone__badge{
	position:absolute; left:16px; bottom:16px; display:flex; align-items:center; gap:6px;
	padding:7px 12px; border-radius:100px; font-size:11px; color:#fff;
	background:rgba(0,0,0,.5); backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.16);
}

.lc-float-card{
	position:absolute; display:flex; align-items:center; gap:10px; padding:12px 16px; border-radius:16px; font-size:13px; font-weight:600;
	background:var(--lc-glass-bg-strong); border:1px solid var(--lc-glass-border); backdrop-filter:blur(var(--lc-glass-blur));
	box-shadow:0 20px 40px -20px rgba(0,0,0,.6); z-index:3; animation:lcDrift2 8s ease-in-out infinite;
}
.lc-float-card svg{ color:var(--lc-orange); flex-shrink:0; }
.lc-float-card--top{ top:6%; left:-4%; animation-delay:-2s; }
.lc-float-card--bottom{ bottom:8%; right:-6%; animation-delay:-5s; }
@keyframes lcDrift2{ 0%,100%{ transform:translateY(0);} 50%{ transform:translateY(14px);} }

.lc-scroll-cue{ position:absolute; bottom:26px; left:50%; transform:translateX(-50%); width:26px; height:42px; border:2px solid rgba(255,255,255,.3); border-radius:14px; z-index:2; }
.lc-scroll-cue span{ position:absolute; top:8px; left:50%; width:4px; height:4px; margin-left:-2px; border-radius:50%; background:var(--lc-orange); animation:lcScroll 1.8s infinite; }
@keyframes lcScroll{ 0%{ opacity:1; top:8px;} 80%{ opacity:0; top:24px;} 100%{ opacity:0; top:8px;} }

@media (max-width:1040px){
	.lc-hero__inner{ grid-template-columns:1fr; text-align:center; }
	.lc-hero__subtitle{ margin-left:auto; margin-right:auto; }
	.lc-hero__cta, .lc-hero__pillbar{ justify-content:center; }
	.lc-hero__stat{ justify-content:center; }
	.lc-eyebrow{ justify-content:center; }
	.lc-hero__visual{ height:420px; margin-top:20px; }
}

/* =========================================================
   About
   ========================================================= */
.lc-about{ display:grid; grid-template-columns:.85fr 1.15fr; gap:64px; align-items:center; }
.lc-about__media{ position:relative; max-width:420px; margin:0 auto; }
.lc-about__frame{
	aspect-ratio:1/1; width:100%; overflow:hidden; padding:0; position:relative;
	display:flex; align-items:flex-end; justify-content:center;
}
.lc-about__portrait{ width:100%; height:100%; object-fit:cover; object-position:top center; border-radius:inherit; }
.lc-about__nameplate{
	position:absolute; left:0; right:0; bottom:0; z-index:1; padding:18px 22px;
	background:linear-gradient(0deg, rgba(0,0,0,.82), rgba(0,0,0,.2) 70%, transparent);
	display:flex; flex-direction:column; gap:3px; border-top:2px solid var(--lc-gold);
}
.lc-about__nameplate strong{
	font-family:var(--font-script); font-style:italic; font-weight:700; color:#fff; font-size:19px;
}
.lc-about__nameplate small{
	font-family:var(--font-mono); color:var(--lc-gold-soft); font-size:10.5px;
	text-transform:uppercase; letter-spacing:.14em; font-weight:600;
}
.lc-about__badge{
	position:absolute; bottom:-24px; right:-16px; padding:18px 22px; display:flex; flex-direction:column; text-align:center;
}
.lc-about__badge strong{ font-family:var(--font-display); font-size:28px; background:linear-gradient(100deg,var(--lc-blue-soft),var(--lc-orange-soft)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.lc-about__badge span{ font-size:11.5px; color:var(--lc-muted); }
.lc-about__line{
	margin-top:24px; padding:18px 22px; border-left:3px solid var(--lc-orange); color:var(--lc-ink); font-weight:500;
	background:var(--lc-glass-bg); border-radius:0 12px 12px 0; font-size:15px;
}

@media (max-width:900px){
	.lc-about{ grid-template-columns:1fr; }
	.lc-about__media{ max-width:320px; margin:0 auto 50px; }
}

/* =========================================================
   Founder block — corporate plaque style with a script name
   ========================================================= */
.lc-founder{
	display:flex; align-items:center; gap:18px; margin-top:28px; padding:16px 22px 16px 16px;
	border-radius:var(--lc-radius-sm); border-left:2px solid var(--lc-gold);
}
.lc-founder__photo{
	width:56px !important; height:56px !important; max-width:56px; max-height:56px;
	border-radius:50%; object-fit:cover; flex-shrink:0; border:2px solid var(--lc-gold-soft);
}
.lc-founder__info{ display:flex; flex-direction:column; gap:3px; }
.lc-founder__name{
	font-family:var(--font-script); font-style:italic; font-weight:700; font-size:19px;
	color:var(--lc-ink); letter-spacing:.01em; line-height:1.15;
}
.lc-founder__title{
	font-family:var(--font-mono); font-size:11px; color:var(--lc-gold-soft); font-weight:600;
	text-transform:uppercase; letter-spacing:.12em;
}

.lc-founder--lg{
	flex-direction:column; text-align:center; align-items:center; justify-content:center;
	margin:44px auto 60px; padding:40px 34px; gap:6px; max-width:360px; border-left:none; border-top:3px solid var(--lc-gold);
}
.lc-founder__photo--lg{
	width:132px !important; height:132px !important; max-width:132px; max-height:132px; margin-bottom:16px;
}
.lc-founder__badge{
	font-family:var(--font-mono); font-size:10px; letter-spacing:.18em; text-transform:uppercase;
	color:var(--lc-navy); background:var(--lc-gold); padding:4px 12px; border-radius:20px; font-weight:700; margin-bottom:10px;
}
.lc-founder__name--lg{ font-size:27px; }
.lc-founder__divider{ width:32px; height:2px; background:var(--lc-gold); margin:8px 0 8px; border-radius:2px; }

/* =========================================================
   Team page — corporate cards, script name + uppercase title
   ========================================================= */
.lc-team-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.lc-team-card{ padding:38px 28px; text-align:center; }
.lc-team-card__photo-wrap{ display:flex; justify-content:center; margin-bottom:22px; }
.lc-team-card__photo{
	width:112px !important; height:112px !important; max-width:112px; max-height:112px;
	border-radius:50%; object-fit:cover; border:2px solid var(--lc-gold-soft);
	box-shadow:0 14px 30px -12px rgba(0,0,0,.55);
}
.lc-team-card__photo--placeholder{
	display:flex; align-items:center; justify-content:center;
	background:linear-gradient(145deg, rgba(209,172,87,.22), rgba(255,255,255,.04));
	color:var(--lc-gold-soft);
}
.lc-team-card__name{
	font-family:var(--font-script); font-style:italic; font-weight:700; font-size:23px;
	color:var(--lc-ink); margin-bottom:8px;
}
.lc-team-card__divider{ width:32px; height:2px; background:var(--lc-gold); margin:0 auto 10px; border-radius:2px; }
.lc-team-card__role{
	font-family:var(--font-mono); font-size:11.5px; color:var(--lc-gold-soft); font-weight:600;
	text-transform:uppercase; letter-spacing:.14em;
}
.lc-team-card__bio{ margin-top:16px; color:var(--lc-muted); font-size:13.5px; }

@media (max-width:900px){
	.lc-team-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
	.lc-team-grid{ grid-template-columns:1fr; }
	.lc-founder{ flex-direction:column; text-align:center; border-left:none; border-top:2px solid var(--lc-gold); }
}

/* =========================================================
   Process
   ========================================================= */
.lc-process{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; }
.lc-process::before{
	content:""; position:absolute; top:34px; left:8%; right:8%; height:1px;
	background:linear-gradient(90deg, transparent, rgba(255,255,255,.18) 15%, rgba(255,255,255,.18) 85%, transparent);
	z-index:0;
}
.lc-process__step{ position:relative; z-index:1; }
.lc-process__num{
	display:inline-flex; align-items:center; justify-content:center; width:68px; height:68px; border-radius:50%;
	font-family:var(--font-display); font-size:20px; font-weight:700; margin-bottom:22px;
	background:linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.02));
	border:1px solid var(--lc-glass-border); backdrop-filter:blur(10px);
	color:var(--lc-orange-soft);
}
.lc-process__step h3{ font-size:20px; margin-bottom:10px; }
.lc-process__step p{ color:var(--lc-muted); font-size:14.5px; }

@media (max-width:900px){
	.lc-process{ grid-template-columns:1fr; gap:36px; }
	.lc-process::before{ display:none; }
}

/* =========================================================
   Cards grid (services / industries / features)
   ========================================================= */
.lc-cards{ display:grid; gap:22px; }
.lc-cards--services{ grid-template-columns:repeat(3,1fr); }
.lc-cards--industries{ grid-template-columns:repeat(3,1fr); }
.lc-cards--features{ grid-template-columns:repeat(5,1fr); }

.lc-card{ padding:34px 28px; transition:transform .4s var(--ease), background .4s, box-shadow .4s; }
.lc-card:hover{ transform:translateY(-8px); background:var(--lc-glass-bg-strong); box-shadow:0 30px 60px -25px rgba(47,107,255,.35); }
.lc-card__icon{
	display:inline-flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:16px; margin-bottom:20px;
	background:linear-gradient(145deg, rgba(47,107,255,.22), rgba(255,122,26,.16));
	color:var(--lc-orange-soft);
}
.lc-card__icon--sm{ width:42px; height:42px; border-radius:12px; }
.lc-card--service h3{ font-size:19px; margin-bottom:12px; }
.lc-card__body{ color:var(--lc-muted); font-size:14px; }
.lc-card__body p{ margin-bottom:10px; }
.lc-card__body ul{ display:flex; flex-wrap:wrap; gap:8px; margin-top:6px; }
.lc-card__body li{
	font-size:12px; padding:5px 10px; border-radius:100px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); color:var(--lc-muted);
}
.lc-card--industry h3{ font-size:16.5px; margin-bottom:8px; }
.lc-card--industry p{ color:var(--lc-muted); font-size:13.5px; }
.lc-card--feature{ text-align:center; padding:30px 22px; }
.lc-card--feature h3{ font-size:15.5px; margin-bottom:8px; }
.lc-card--feature p{ color:var(--lc-muted); font-size:13px; }
.lc-card--feature .lc-card__icon{ margin-left:auto; margin-right:auto; }

@media (max-width:1080px){
	.lc-cards--services, .lc-cards--industries{ grid-template-columns:repeat(2,1fr); }
	.lc-cards--features{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:640px){
	.lc-cards--services, .lc-cards--industries, .lc-cards--features{ grid-template-columns:1fr; }
}

/* =========================================================
   Experience
   ========================================================= */
.lc-experience{ display:grid; grid-template-columns:.6fr 1.4fr; gap:56px; align-items:center; }
.lc-experience__ring{
	width:230px; height:230px; border-radius:50%; margin:0 auto; display:flex; flex-direction:column; align-items:center; justify-content:center;
	background:conic-gradient(from -90deg, var(--lc-blue), var(--lc-orange), var(--lc-blue));
	padding:6px;
}
.lc-experience__ring::before{ content:none; }
.lc-experience__ring{ position:relative; }
.lc-experience__ring{ box-shadow:0 30px 70px -30px rgba(47,107,255,.5); }
.lc-experience__number, .lc-experience__plus{ font-family:var(--font-display); font-size:52px; font-weight:700; color:#fff; }
.lc-experience__ring small{ color:rgba(255,255,255,.85); font-size:13px; letter-spacing:.06em; text-transform:uppercase; margin-top:4px; }
.lc-experience__ring{ background-clip:padding-box; }
.lc-experience__ring{ isolation:isolate; }
.lc-experience__ring::after{
	content:""; position:absolute; inset:6px; border-radius:50%; background:var(--lc-navy-2); z-index:-1;
}
.lc-tags{ display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.lc-tags li{ font-size:13px; padding:9px 16px; border-radius:100px; background:var(--lc-glass-bg); border:1px solid var(--lc-glass-border); color:var(--lc-muted); }

@media (max-width:900px){
	.lc-experience{ grid-template-columns:1fr; text-align:center; }
	.lc-tags{ justify-content:center; }
}

/* =========================================================
   Work / portfolio
   ========================================================= */
.lc-filters{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:40px; }
.lc-filters__btn{
	padding:9px 18px; border-radius:100px; font-size:13px; font-weight:600; color:var(--lc-muted);
	background:var(--lc-glass-bg); border:1px solid var(--lc-glass-border); transition:all .3s;
}
.lc-filters__btn:hover{ color:var(--lc-ink); }
.lc-filters__btn.is-active{ color:#fff; background:linear-gradient(120deg,var(--lc-blue),var(--lc-orange)); border-color:transparent; }

.lc-work-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.lc-work-item{ transition:opacity .4s, transform .4s; }
.lc-work-item.is-hidden{ display:none; }
.lc-work-item__frame{
	position:relative; border-radius:20px; overflow:hidden; aspect-ratio:4/5; border:1px solid var(--lc-glass-border);
	display:flex; align-items:center; justify-content:center;
}
.lc-work-item__frame--1{ background:linear-gradient(150deg, rgba(47,107,255,.35), rgba(11,19,48,.9)); }
.lc-work-item__frame--2{ background:linear-gradient(150deg, rgba(255,122,26,.3), rgba(11,19,48,.9)); }
.lc-work-item__frame--3{ background:linear-gradient(150deg, rgba(47,107,255,.22), rgba(255,122,26,.22)); }
.lc-work-item__img{ width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.lc-work-item:hover .lc-work-item__img{ transform:scale(1.08); }
.lc-work-item__ph{ color:rgba(255,255,255,.5); }
.lc-work-item__overlay{
	position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:22px;
	background:linear-gradient(0deg, rgba(0,0,0,.78), transparent 60%);
	opacity:0; transform:translateY(10px); transition:opacity .4s, transform .4s;
}
.lc-work-item:hover .lc-work-item__overlay{ opacity:1; transform:translateY(0); }
.lc-work-item__cat{ font-family:var(--font-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--lc-orange-soft); margin-bottom:6px; }
.lc-work-item__overlay h3{ font-size:16px; color:#fff; }

@media (max-width:900px){ .lc-work-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .lc-work-grid{ grid-template-columns:1fr; } }

/* =========================================================
   Contact
   ========================================================= */
.lc-section--contact{ position:relative; overflow:hidden; }
.lc-orb--contact{ top:-140px; right:-140px; left:auto; }
.lc-orb--contact2{ bottom:-160px; left:-120px; right:auto; }
.lc-contact{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:flex-start; position:relative; z-index:1; }
.lc-contact__copy p{ color:var(--lc-muted); margin:18px 0 30px; max-width:440px; }
.lc-contact__list{ display:flex; flex-direction:column; gap:18px; }
.lc-contact__list li{ display:flex; align-items:center; gap:14px; }
.lc-contact__list strong{ display:block; font-size:12px; color:var(--lc-muted-2); font-weight:600; text-transform:uppercase; letter-spacing:.04em; }
.lc-contact__list a{ font-size:15px; }
.lc-contact__list a:hover{ color:var(--lc-orange-soft); }

.lc-form{ padding:36px; display:flex; flex-direction:column; gap:18px; }
.lc-form__row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.lc-form label{ display:flex; flex-direction:column; gap:8px; font-size:13px; color:var(--lc-muted); }
.lc-form input, .lc-form select, .lc-form textarea{
	background:rgba(255,255,255,.05); border:1px solid var(--lc-glass-border); border-radius:12px; padding:13px 14px;
	color:var(--lc-ink); font-size:14.5px; transition:border-color .25s, background .25s; resize:vertical;
}
.lc-form input:focus, .lc-form select:focus, .lc-form textarea:focus{
	outline:none; border-color:var(--lc-blue-soft); background:rgba(255,255,255,.08);
}
.lc-form select option{ background:var(--lc-navy-2); color:var(--lc-ink); }
.lc-form__submit{ margin-top:4px; }
.lc-form__note{ font-size:12.5px; color:var(--lc-muted-2); }
.lc-form__status{ font-size:13.5px; min-height:18px; }
.lc-form__status.is-ok{ color:#3ddc84; }
.lc-form__status.is-err{ color:#ff6b6b; }

@media (max-width:900px){
	.lc-contact{ grid-template-columns:1fr; }
	.lc-form__row{ grid-template-columns:1fr; }
}

/* =========================================================
   Footer
   ========================================================= */
.lc-footer{ position:relative; padding:80px 0 0; border-top:1px solid rgba(255,255,255,.07); }
.lc-footer__inner{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:56px; }
.lc-footer__logo{ height:48px; width:auto; margin-bottom:16px; }
.lc-footer__brand p{ color:var(--lc-muted); font-size:14px; max-width:260px; }
.lc-footer__col h3{ font-size:13px; text-transform:uppercase; letter-spacing:.06em; color:var(--lc-muted-2); margin-bottom:18px; font-family:var(--font-body); font-weight:700; }
.lc-footer__col ul{ display:flex; flex-direction:column; gap:12px; }
.lc-footer__col a{ color:var(--lc-muted); font-size:14.5px; transition:color .25s; }
.lc-footer__col a:hover{ color:var(--lc-ink); }
.lc-footer__location{ color:var(--lc-muted); font-size:14.5px; display:flex; align-items:center; gap:6px; }
.lc-footer__bottom{
	display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; padding:22px 28px; border-top:1px solid rgba(255,255,255,.06);
	font-size:13px; color:var(--lc-muted-2);
}

@media (max-width:900px){
	.lc-footer__inner{ grid-template-columns:1fr 1fr; }
}
@media (max-width:560px){
	.lc-footer__inner{ grid-template-columns:1fr; }
}

/* WhatsApp floating button */
.lc-whatsapp{
	position:fixed; bottom:26px; right:26px; width:58px; height:58px; border-radius:50%; z-index:80;
	display:flex; align-items:center; justify-content:center; color:#fff;
	background:linear-gradient(145deg,#25D366,#128C4A);
	box-shadow:0 16px 34px -10px rgba(37,211,102,.6);
	animation:lcWa 2.6s ease-in-out infinite;
}
@keyframes lcWa{ 0%,100%{ transform:scale(1);} 50%{ transform:scale(1.07);} }

/* =========================================================
   Generic templates (blog/page/404 fallback)
   ========================================================= */
.lc-generic__item{ padding:34px; margin-bottom:22px; }
.lc-generic__thumb{ margin:18px 0; border-radius:16px; overflow:hidden; }
.lc-generic__list{ display:flex; flex-direction:column; gap:20px; max-width:760px; margin:0 auto; }

/* =========================================================
   Scroll reveal
   ========================================================= */
[data-reveal]{ opacity:0; transform:translateY(28px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
[data-reveal].is-visible{ opacity:1; transform:translateY(0); }
[data-reveal-delay="1"]{ transition-delay:.12s; }
[data-reveal-delay="2"]{ transition-delay:.24s; }

/* =========================================================
   Responsive polish — tablet & mobile
   ========================================================= */

/* Tablet (iPad-ish widths) */
@media (max-width:1180px){
	.lc-shell{ padding:0 24px; }
}

/* Phones: avoid the hero fighting for space under the sticky
   topbar + glass nav, and let it size to its content instead
   of forcing a tall empty section. */
@media (max-width:640px){
	.lc-hero{ min-height:auto; padding:36px 0 48px; }
	.lc-shell{ padding:0 18px; }
	.lc-section{ padding:80px 0; }
	.lc-nav__brand img, .lc-nav__logo-fallback{ height:36px; }
}

/* Very small phones */
@media (max-width:380px){
	.lc-shell{ padding:0 16px; }
	.lc-hero__line{ font-size:clamp(30px,9vw,40px); }
	.lc-btn{ padding:13px 20px; font-size:14px; }
}
