:root{--lime:#91f800;--ink:#101010;--muted:#e6e6e6;--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.nav{height:89px;background:#000;color:#e6e6e6;position:absolute;z-index:20;top:0;width:100%;display:flex;align-items:center;justify-content:center;gap:20px}.brand img{width:61px;height:59px}.nav nav{display:flex;align-items:center}.nav nav a{font-size:17px;padding:14px 20px;transition:.25s}.nav nav a:hover{color:var(--lime)}.menu-btn{display:none}.hero{height:1022px;min-height:100svh;background:#050505;position:relative;overflow:hidden;color:#fff}.hero-video,.hero-grid,.scrim{position:absolute;inset:89px 0 0;width:100%;height:calc(100% - 89px)}.hero-video{object-fit:cover}.hero-grid{display:grid;grid-template-columns:1fr 1.5fr 1.5fr 1fr;gap:50px;opacity:.55;transform:scale(1.12)}.hero-grid img{width:100%;height:33%;object-fit:cover;align-self:center}.hero-grid img:nth-child(2),.hero-grid img:nth-child(4){align-self:start;margin-top:60px}.scrim{background:linear-gradient(90deg,rgba(0,0,0,.8),rgba(0,0,0,.14)),linear-gradient(0deg,rgba(0,0,0,.55),transparent)}.hero-copy{position:absolute;left:max(4.2vw,24px);bottom:110px;z-index:2}.hero h1{font-size:clamp(42px,4.2vw,80px);letter-spacing:-.045em;line-height:1.02;margin:0 0 32px}.hero h1 span{display:block;background:linear-gradient(90deg,#fff,#c6ff76 35%);-webkit-background-clip:text;color:transparent}.hero h1 br~*{font-size:.7em}.cta{background:var(--lime);color:#000;border:0;border-radius:8px;padding:13px 18px;display:inline-flex;align-items:center;gap:9px;font-size:20px;font-weight:700;box-shadow:0 4px 8px #0004;transition:.25s}.cta:hover{transform:translateY(-3px);box-shadow:0 9px 22px #91f80055}.cta b{border-radius:50%;background:#000;color:var(--lime);width:20px;height:20px;text-align:center}.logo-story{height:190vh;background:#000;color:#fff}.logo-sticky{height:100vh;position:sticky;top:0;display:grid;place-items:center;overflow:hidden}.silver-logo{width:min(34vw,650px);transform:rotate(-90deg);filter:drop-shadow(0 0 40px #fff1);will-change:transform,opacity}.logo-sticky p{position:absolute;text-align:center;font-size:clamp(28px,2.5vw,48px);font-weight:650;opacity:0;transform:translateY(50px)}.logo-sticky p strong{display:block;font-size:1.15em}.logo-sticky em{font-family:Georgia,serif;background:linear-gradient(90deg,#fff,#c6ff76);-webkit-background-clip:text;color:transparent}.scroll-line{position:absolute;bottom:4vh;width:40%;height:2px;background:linear-gradient(90deg,transparent,#fff,transparent);transform:scaleX(0)}.section-pad{padding:clamp(80px,8vw,160px) max(5vw,24px)}.services{max-width:1920px;margin:auto}.tabs{display:flex;overflow:auto;gap:8px;margin-bottom:30px}.tabs button{flex:1;white-space:nowrap;border:0;border-bottom:1px solid;background:#fff;padding:20px 10px 10px;font-weight:700;font-size:clamp(14px,1.45vw,28px);cursor:pointer}.tabs button.active{background:var(--lime);border-bottom:4px solid}.service-stage{height:min(62vw,720px);min-height:460px;position:relative;overflow:hidden;background:#000}.service-stage>img{width:100%;height:100%;object-fit:cover;opacity:.55;transition:.6s}.service-stage>div{position:absolute;right:9%;top:50%;transform:translateY(-50%);color:#fff;max-width:650px}.service-stage h2{font-size:clamp(28px,2.2vw,42px)}.small{font-size:16px;padding:10px 14px}.display{text-align:center;font-size:clamp(42px,4.2vw,80px);letter-spacing:-.05em;line-height:1.05;margin:0 0 70px}.project-grid{max-width:1440px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.project-card{aspect-ratio:22/13;border-radius:10px;overflow:hidden;position:relative;color:#fff}.project-card img{width:100%;height:100%;object-fit:cover;transition:.6s}.project-card div{position:absolute;inset:0;padding:24px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(transparent,#000e);opacity:0;transition:.35s}.project-card:hover img{transform:scale(1.08)}.project-card:hover div{opacity:1}.project-card h3{margin:0;color:#d8ff9f;font-size:21px}.project-card p{margin:5px 0}.process .display small{display:block;font-size:.7em}.process-list{max-width:1364px;margin:auto;height:520px;display:flex;gap:8px}.step{width:190px;border-right:4px solid;overflow:hidden;position:relative;cursor:pointer;transition:.6s}.step.active{width:770px}.step>b{font-size:420px;line-height:1;background:linear-gradient(90deg,#000,#777);-webkit-background-clip:text;color:transparent}.step>h3{position:absolute;bottom:20px;left:20px}.step-photo{height:100%;position:relative;color:#fff}.step-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.55)}.step-photo b,.step-photo h3{position:absolute;top:50%;transform:translateY(-50%)}.step-photo b{font-size:100px;left:30px}.step-photo h3{font-size:32px;left:140px;color:#d8ff9f}.partners{overflow:hidden}.marquee{width:100vw;margin-left:calc(50% - 50vw);overflow:hidden}.marquee>div{display:flex;width:max-content;gap:80px;align-items:center;animation:marquee 24s linear infinite}.marquee span{font-size:30px;font-weight:800;white-space:nowrap;color:#555}.marquee span:nth-child(3n){color:#ff4a16}.marquee span:nth-child(4n){color:#2d66cc}@keyframes marquee{to{transform:translateX(-50%)}}.card-offer{min-height:900px;background:#000;color:#fff;position:relative;display:flex;align-items:center;justify-content:center;gap:9vw;overflow:hidden;padding:90px 6vw}.card-offer:after{content:"";position:absolute;inset:45% 0 0;background:repeating-linear-gradient(90deg,transparent 0 5%,#91f80044 6%,transparent 8%);filter:blur(18px)}.card-img{width:min(29vw,450px);transform:rotate(-13deg);z-index:2;filter:drop-shadow(0 30px 50px #000)}.offer-copy{text-align:center;z-index:2}.offer-copy>span{font:60px Georgia;color:#f2bb55}.offer-copy h2{font-size:clamp(48px,5vw,80px);color:#d8ff9f;margin:4px}.offer-copy p{font-size:28px}.contact{display:grid;grid-template-columns:1fr 1.1fr;gap:6vw;max-width:1500px;margin:auto;align-items:center}.contact-copy h2{font-size:clamp(38px,3.4vw,62px);line-height:1.04}.contact-copy mark{background:var(--lime);padding:0 12px}.contact form{padding:48px;border:1px solid #ddd;border-radius:16px;box-shadow:0 20px 60px #0001}.contact form h3{font-size:28px}.contact label{display:grid;gap:8px;margin:20px 0;font-weight:600}.contact input,.contact select,.contact textarea{width:100%;padding:14px 16px;border:1px solid #bbb;border-radius:7px}.contact textarea{min-height:100px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}footer{min-height:360px;background:#000;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px}footer img{width:90px}.reveal{opacity:0;transform:translateY(45px);transition:opacity .8s,transform .8s}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){.nav{height:72px;justify-content:space-between;padding:0 20px;position:fixed}.brand img{width:48px;height:48px}.menu-btn{display:grid;gap:6px;background:none;border:0}.menu-btn i{display:block;width:28px;height:2px;background:#fff}.nav nav{position:fixed;inset:72px 0 auto;background:#000;display:grid;padding:20px;transform:translateY(-130%);transition:.35s}.nav.open nav{transform:none}.hero{height:100svh}.hero-video,.hero-grid,.scrim{inset:0;height:100%}.hero-grid{grid-template-columns:1fr 1fr;gap:14px}.hero-copy{bottom:9vh}.hero h1{font-size:clamp(40px,11vw,64px)}.silver-logo{width:70vw}.tabs button{flex:none}.service-stage{height:70vh}.service-stage>div{left:24px;right:24px;top:auto;bottom:30px;transform:none}.project-grid{grid-template-columns:1fr 1fr;gap:18px}.process-list{height:500px;display:grid}.step,.step.active{width:100%;height:70px;border-right:0;border-bottom:2px solid}.step.active{height:280px}.step>b{font-size:90px}.step-photo b{font-size:64px}.step-photo h3{left:100px;font-size:24px}.card-offer{min-height:760px;flex-direction:column;gap:30px}.card-img{width:min(64vw,330px)}.offer-copy>span{font-size:42px}.offer-copy p{font-size:18px}.contact{grid-template-columns:1fr}.contact form{padding:24px}.two{grid-template-columns:1fr}.display{margin-bottom:44px}}
@media(max-width:560px){.project-grid{grid-template-columns:1fr}.project-card div{opacity:1}.hero-grid img{height:45%}.hero-grid img:nth-child(n+3){align-self:end}.section-pad{padding:76px 20px}.contact form h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}.reveal{opacity:1;transform:none}}

/* Prototype-aligned refinements */
.hero-grid{display:none}
.hero-video{background:url("assets/hero-poster.png") center/cover no-repeat}
.scrim{background:linear-gradient(90deg,rgba(0,0,0,.32),transparent 68%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 55%)}
.hero-copy{left:80px}
.hero h1{font-size:80px;line-height:1.05;letter-spacing:-3.2px}
.hero h1 span{background:linear-gradient(90deg,#fff,#c6ff76 42%);-webkit-background-clip:text;color:transparent}
.hero .cta{font-size:28px}
.logo-story{height:220vh;background:#000}
.logo-sticky{height:100vh;position:sticky;top:0;display:block;overflow:hidden;background:#000}
.silver-state,.brand-state{position:absolute;inset:0}
.silver-state{display:grid;place-items:center;opacity:1;will-change:opacity,transform;background:#000 url("assets/section2-initial.png") center/cover no-repeat}
.silver-logo{display:none}
.brand-state{opacity:0;will-change:opacity}
.brand-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.brand-state:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 55%),linear-gradient(0deg,rgba(0,0,0,.58),transparent 52%)}
.brand-lockup{position:absolute;z-index:2;left:50%;top:50%;width:min(70vw,1100px);height:58vh;text-align:center;color:#fff;transform:translate(-50%,-46%);will-change:transform}
.brand-wordmark{position:absolute;z-index:2;left:18%;top:0;display:block;width:64%;height:auto;margin:0;mix-blend-mode:normal;transform:scale(1.62);opacity:0;will-change:transform,opacity}
.logo-sticky .brand-idea{position:absolute;z-index:3;left:0;top:58%;width:100%;font-size:clamp(28px,2.6vw,48px);line-height:1.15;margin:0;opacity:0;transform:translateY(20px)}
.brand-idea em{font-family:Georgia,serif;font-size:1.12em;background:linear-gradient(90deg,#fff,#c6ff76);-webkit-background-clip:text;color:transparent}
.logo-sticky .brand-message{position:absolute;z-index:3;left:0;top:70%;width:100%;font-size:clamp(34px,3.2vw,58px);font-weight:700;line-height:1.1;margin:0;letter-spacing:-.035em;opacity:0;transform:translateY(20px)}
.brand-lines{position:absolute;z-index:3;left:8%;top:84%;width:84%;height:18px;margin:0}
.brand-lines i{position:absolute;left:0;height:3px;border-radius:99px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#fff,#c6ff76)}
.brand-lines i:nth-child(1){top:0;width:100%}.brand-lines i:nth-child(2){top:7px;left:8%;width:78%}.brand-lines i:nth-child(3){top:14px;left:18%;width:63%}
.section-pad{padding:120px max(4.7vw,48px)}
.tabs button{font-size:clamp(16px,1.45vw,28px)}
.service-stage{height:min(60vw,780px)}
.service-stage>img{opacity:.82}
.service-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 35%,rgba(0,0,0,.76))}
.service-stage>div{z-index:2;max-width:720px}
.service-stage h2{font-size:40px;line-height:1.2}
.display{font-size:80px;margin-bottom:60px}
.projects{padding-top:120px;padding-bottom:120px}

@media(max-width:900px){
  .hero-copy{left:24px;right:20px}.hero h1{font-size:clamp(40px,11vw,64px);letter-spacing:-.045em}.hero .cta{font-size:18px}
  .logo-story{height:190vh}.brand-lockup{width:88vw;top:54%}.brand-wordmark{transform:scale(1.35)}.logo-sticky .brand-idea{font-size:22px;margin:-2vw 0 8px}.logo-sticky .brand-message{font-size:30px}.brand-scene{object-position:58% center}
  .service-stage h2{font-size:28px}.display{font-size:clamp(42px,11vw,64px)}
}

/* Section 3: hover-driven service showcase */
.services .tabs{position:relative}
.services .tabs button{position:relative;z-index:2;background:transparent;transition:border-width .25s}
.services .tabs button.active{background:transparent}
.tab-highlight{position:absolute;z-index:1;left:0;bottom:0;height:calc(100% - 4px);background:var(--lime);transition:transform .45s cubic-bezier(.22,1,.36,1),width .45s cubic-bezier(.22,1,.36,1)}
.service-stage>img{transition:opacity .35s,transform .9s cubic-bezier(.22,1,.36,1);animation:serviceDrift 8s ease-in-out infinite alternate}
.service-stage.is-changing>img{opacity:0;transform:scale(1.07)}
.service-copy{transition:opacity .28s,transform .4s cubic-bezier(.22,1,.36,1)}
.service-stage.is-changing .service-copy{opacity:0;transform:translate(28px,-50%)}
@keyframes serviceDrift{to{transform:scale(1.035)}}

/* Section 4: project hover and video lightbox */
.project-card{appearance:none;border:0;padding:0;text-align:left;background:#111;cursor:pointer}
.project-card img{transition:transform .65s cubic-bezier(.22,1,.36,1),filter .4s}
.project-card div{background:linear-gradient(transparent 35%,rgba(0,0,0,.88));transform:translateY(14px);transition:opacity .32s,transform .45s cubic-bezier(.22,1,.36,1)}
.project-card:hover img,.project-card:focus-visible img{transform:scale(1.07);filter:brightness(.72)}
.project-card:hover div,.project-card:focus-visible div{opacity:1;transform:none}
.project-modal{position:fixed;z-index:100;inset:0;padding:5vw;display:grid;place-items:center;background:rgba(0,0,0,.7);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.project-modal.open{opacity:1;visibility:visible}
.project-modal__panel{position:relative;width:min(80vw,1440px);transform:scale(.94);transition:transform .45s cubic-bezier(.22,1,.36,1)}
.project-modal.open .project-modal__panel{transform:none}
.project-modal video{display:block;width:100%;max-height:82vh;aspect-ratio:16/9;object-fit:cover;background:#000;border-radius:8px;box-shadow:0 28px 90px #0009}
.project-modal__close{position:absolute;z-index:2;right:10px;top:10px;width:34px;height:34px;border:0;border-radius:50%;background:#090909;color:#fff;font-size:24px;line-height:1;cursor:pointer}
.modal-open{overflow:hidden}
@media(max-width:560px){.project-modal{padding:14px}.project-modal__panel{width:100%}.project-modal video{max-height:70vh}.project-modal__close{right:6px;top:6px}}

/* Section 5: automated and clickable production process */
.process{overflow:hidden}
.process .display small{display:block;font-size:.7em}
.process-list{display:flex;width:100%;max-width:1364px;height:520px;margin:auto;gap:0;border-radius:8px;overflow:hidden;background:#fff}
.process-list .step{appearance:none;flex:0 0 clamp(118px,10vw,190px);width:auto;height:100%;min-width:0;padding:0;border:0;border-right:4px solid #101010;border-radius:0;background:#fff;color:#101010;overflow:hidden;position:relative;cursor:pointer;text-align:left;transition:flex-basis .72s cubic-bezier(.22,1,.36,1)}
.process-list .step:last-child{border-right:0}
.process-list .step.active{flex:1 1 770px;width:auto}
.step-number{position:absolute;left:50%;top:52%;font-size:clamp(260px,22vw,420px);font-weight:800;line-height:.8;letter-spacing:-.12em;transform:translate(-55%,-50%);background:linear-gradient(105deg,#050505 8%,#9b9b9b 53%,#171717 90%);-webkit-background-clip:text;background-clip:text;color:transparent;transition:opacity .22s}
.step-photo{position:absolute;inset:0;display:block;color:#fff;background:#080808;opacity:0;transform:scale(1.035);pointer-events:none;transition:opacity .28s ease .12s,transform .8s cubic-bezier(.22,1,.36,1)}
.step-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.08) 72%),linear-gradient(0deg,rgba(0,0,0,.32),transparent 55%)}
.step-photo img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.68);transition:transform 5s ease}
.step-copy{position:absolute;z-index:2;left:clamp(24px,3vw,50px);right:24px;top:50%;display:flex;align-items:center;gap:clamp(24px,3vw,52px);transform:translateY(-50%);white-space:nowrap}
.step-copy b{position:static;top:auto;left:auto;font-size:clamp(74px,6vw,112px);font-weight:700;line-height:1;transform:none}
.step-copy>span{font-size:clamp(24px,2vw,38px);font-weight:750;letter-spacing:-.035em}
.step-copy em{font-style:normal;color:#c7ff78}
.process-list .step.active .step-number{opacity:0}
.process-list .step.active .step-photo{opacity:1;transform:none}
.process-list .step.active .step-photo img{transform:scale(1.035)}
.process-list .step:focus-visible{outline:2px solid #101010;outline-offset:-2px;z-index:3}

@media(max-width:900px){
  .process-list{display:flex;flex-direction:column;height:560px;border-radius:6px}
  .process-list .step,.process-list .step.active{width:100%;border-right:0;border-bottom:3px solid #101010;transition:flex-basis .65s cubic-bezier(.22,1,.36,1)}
  .process-list .step{flex:0 0 72px}
  .process-list .step.active{flex:1 1 344px}
  .process-list .step:last-child{border-bottom:0}
  .step-number{left:28px;top:50%;font-size:86px;letter-spacing:-.08em;transform:translateY(-50%)}
  .step-copy{left:24px;gap:22px}
  .step-copy b{font-size:68px}
  .step-copy>span{font-size:clamp(22px,6vw,30px);white-space:normal}
  .step-photo:after{background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.06))}
}

@media(prefers-reduced-motion:reduce){
  .process-list .step,.step-photo,.step-photo img{transition:none}
}

/* Section 6: original Figma partner logos */
.partners{padding:160px 0;overflow:hidden;background:#fff}
.partners .display{margin:0 24px 80px}
.partners .marquee{width:100%;margin:0;overflow:hidden}
.partners .partner-track{display:flex;width:max-content;gap:0;align-items:center;animation:partnerMarquee 28s linear infinite;will-change:transform}
.partners .partner-track img{display:block;flex:none;width:1920px;height:126px;object-fit:contain}
.partners .marquee:hover .partner-track{animation-play-state:paused}
@keyframes partnerMarquee{to{transform:translateX(-1920px)}}

@media(max-width:900px){
  .partners{padding:96px 0}
  .partners .display{margin-bottom:56px}
  .partners .partner-track{animation-duration:24s}
  .partners .partner-track img{width:1520px;height:auto}
  @keyframes partnerMarquee{to{transform:translateX(-1520px)}}
}

@media(prefers-reduced-motion:reduce){
  .partners .partner-track{animation-play-state:paused}
}

/* Section 7: Thẻ Sành offer and guide */
.card-offer{display:block;min-height:900px;height:900px;padding:0;background:#000;color:#fff;position:relative;overflow:hidden}
.offer-lights{position:absolute;z-index:0;left:-5%;right:-5%;bottom:-24%;height:76%;background:
  radial-gradient(ellipse at 5% 95%,rgba(155,255,218,.95),transparent 26%),
  radial-gradient(ellipse at 22% 95%,rgba(0,164,99,.75),transparent 25%),
  radial-gradient(ellipse at 78% 95%,rgba(108,255,0,.55),transparent 27%),
  radial-gradient(ellipse at 98% 95%,rgba(166,255,58,.95),transparent 28%),
  repeating-linear-gradient(90deg,transparent 0 4.3%,rgba(230,255,230,.5) 4.8%,rgba(4,10,7,.85) 5.6%,transparent 7.2%);
  filter:blur(13px);opacity:.95;transform:scaleX(1.05);animation:offerLights 8s ease-in-out infinite alternate;will-change:transform,filter}
.offer-lights:after{content:"";position:absolute;inset:-20% 0 0;background:linear-gradient(#000 1%,transparent 50%),repeating-linear-gradient(90deg,transparent 0 5%,rgba(255,255,255,.15) 5.3%,transparent 6.2%);mix-blend-mode:overlay}
.offer-slider{position:relative;z-index:1;width:200%;height:100%;display:flex;transition:transform .9s cubic-bezier(.22,1,.36,1)}
.card-offer.show-guide .offer-slider{transform:translateX(-50%)}
.offer-slide{position:relative;width:50%;height:100%;flex:none;display:flex;align-items:center;justify-content:center}
.offer-slide--hero{gap:160px;padding:150px 9vw}
.card-wrap{width:370px;height:495px;display:grid;place-items:center;animation:cardFloat 4.8s ease-in-out infinite}
.card-img{z-index:2;width:276px;height:443px;object-fit:cover;border-radius:16px;transform:rotate(-13.25deg);filter:drop-shadow(0 28px 45px rgba(0,0,0,.65)) drop-shadow(0 0 12px rgba(210,255,229,.4))}
.offer-copy{z-index:2;width:675px;text-align:center}
.sanh-title{display:block;width:252px;height:120px;object-fit:contain;margin:0 auto 16px;filter:drop-shadow(0 4px 4px #0004)}
.offer-copy h2{margin:0;background:linear-gradient(90deg,#fff,#c6ff76);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:80px;line-height:1.05;letter-spacing:-3.2px}
.offer-copy p{margin:16px 0 32px;font-size:32px;line-height:1.25;letter-spacing:-.32px}
.offer-copy .cta,.offer-guide .cta{font-size:20px;padding:12px 16px}
.offer-copy .cta b,.offer-guide .cta b{display:grid;place-items:center}
.offer-guide{padding:95px 5vw}
.offer-back{position:absolute;z-index:2;left:5vw;top:46px;padding:10px 14px;border:1px solid #fff5;border-radius:8px;background:#111;color:#fff;cursor:pointer}
.offer-guide__inner{width:min(1736px,100%);text-align:center}
.offer-guide__inner>h2{margin:0 0 40px;background:linear-gradient(90deg,#fff,#c6ff76);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:56px;line-height:1.1;letter-spacing:-1.12px}
.offer-guide__inner>h2 small{display:block;margin-bottom:4px;color:#fff;-webkit-text-fill-color:#fff;font-size:28px;line-height:1.3}
.offer-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:120px;align-items:start}
.offer-steps article{display:flex;min-height:250px;flex-direction:column;align-items:center}
.offer-steps h3{margin:0 0 16px;font-size:40px;line-height:1.2}
.offer-steps p{max-width:480px;min-height:90px;margin:0 0 24px;font-size:21px;line-height:1.4;letter-spacing:.23px}
@keyframes cardFloat{50%{transform:translateY(-12px) rotate(.7deg)}}
@keyframes offerLights{to{transform:scaleX(1.1) translateX(2%);filter:blur(17px) brightness(1.12)}}

@media(max-width:900px){
  .card-offer{height:auto;min-height:820px}
  .offer-slider{min-height:820px}
  .offer-slide--hero{min-height:820px;flex-direction:column;gap:12px;padding:78px 20px 60px}
  .card-wrap{width:280px;height:350px}
  .card-img{width:190px;height:305px}
  .offer-copy{width:100%}
  .sanh-title{width:170px;height:75px;margin-bottom:8px}
  .offer-copy h2{font-size:clamp(44px,12vw,64px);letter-spacing:-2px}
  .offer-copy p{margin:12px 0 24px;font-size:18px}
  .offer-guide{min-height:820px;padding:92px 24px 48px;overflow:auto}
  .offer-back{top:24px;left:24px}
  .offer-guide__inner>h2{font-size:34px;margin-bottom:32px}.offer-guide__inner>h2 small{font-size:18px}
  .offer-steps{grid-template-columns:1fr;gap:28px}
  .offer-steps article{min-height:0}
  .offer-steps h3{font-size:28px;margin-bottom:8px}.offer-steps p{min-height:0;margin-bottom:14px;font-size:16px}
}

@media(prefers-reduced-motion:reduce){
  .card-wrap,.offer-lights{animation:none}
  .offer-slider{transition:none}
}

/* Section 8: consultation form and success state */
.contact{min-height:1126px;padding-top:120px;padding-bottom:120px;grid-template-columns:595px 683px;gap:80px;justify-content:center}
.contact-copy h2{margin:0 0 38px;font-size:62px;line-height:1;letter-spacing:-2.5px}
.contact-copy mark{display:inline-block;margin-top:8px;padding:5px 14px;border-radius:10px;background:#c6ff76;color:#080808}
.contact-copy p{max-width:595px;color:#737373;font-size:16px;line-height:1.55}
.contact form{position:relative;padding:48px;border:1px solid #e2e2e2;border-radius:16px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.08)}
.contact form h3{margin:0 0 48px;font-size:28px;line-height:1.3}
.contact label{display:block;margin:0 0 24px;font-size:14px;font-weight:650}
.contact label>span,.contact legend>span{color:#e11}
.contact input,.contact select,.contact textarea{display:block;width:100%;margin-top:10px;padding:14px 16px;border:1px solid #d8d8df;border-radius:8px;background:#fff;color:#111;outline:none;transition:border-color .2s,box-shadow .2s}
.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:#78cc00;box-shadow:0 0 0 3px rgba(145,248,0,.18)}
.contact textarea{min-height:96px}
.contact .two{gap:20px}.contact .two label{min-width:0}
.contact fieldset{display:flex;gap:28px;margin:0 0 24px;padding:0;border:0}
.contact fieldset legend{width:100%;margin-bottom:10px;font-size:14px;font-weight:650}
.contact fieldset label{display:flex;align-items:center;gap:8px;margin:0;cursor:pointer}
.contact fieldset input{appearance:none;width:20px;height:20px;margin:0;padding:0;border:1.5px solid #111;border-radius:50%}
.contact fieldset input:checked{border:5px solid #111;background:#fff}
.form-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}
.form-status{min-height:20px;margin:0 0 8px;font-size:14px}.form-status.error{color:#c62828}
.contact .form-submit{width:100%;justify-content:center;min-height:60px;font-size:20px}
.contact .form-submit:disabled{cursor:wait;opacity:.65;transform:none}
.form-success{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.65);backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.form-success.open{opacity:1;visibility:visible}
.form-success__panel{width:min(520px,100%);padding:48px 40px;border-radius:20px;background:#fff;color:#101010;text-align:center;box-shadow:0 30px 100px rgba(0,0,0,.35);transform:translateY(24px) scale(.96);transition:transform .45s cubic-bezier(.22,1,.36,1)}
.form-success.open .form-success__panel{transform:none}
.success-check{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 24px;border-radius:50%;background:#91f800;font-size:38px;font-weight:800}
.form-success h2{margin:0 0 12px;font-size:34px;letter-spacing:-1px}.form-success p{margin:0 0 28px;color:#666;line-height:1.5}
.form-success .cta{justify-content:center;min-width:150px}

@media(max-width:1100px){
  .contact{min-height:0;grid-template-columns:minmax(0,595px) minmax(0,683px);gap:40px}
  .contact-copy h2{font-size:clamp(40px,5vw,56px)}
}
@media(max-width:900px){
  .contact{display:grid;grid-template-columns:1fr;padding:86px 24px;gap:48px}
  .contact-copy h2{font-size:clamp(40px,10vw,58px)}
  .contact form{padding:28px 22px}.contact form h3{margin-bottom:34px;font-size:24px}
}
@media(max-width:560px){
  .contact .two{grid-template-columns:1fr;gap:0}
  .contact fieldset{gap:22px;flex-wrap:wrap}
  .contact fieldset legend{flex-basis:100%}
  .form-success__panel{padding:38px 24px}.form-success h2{font-size:28px}
}

/* Footer */
.site-footer{position:relative;display:block;width:100%;min-height:800px;margin-top:99px;padding:0;background:#000 url("assets/footer-bg.png") center/cover no-repeat;color:#fff;border-radius:240px 240px 0 0;overflow:visible;text-align:left}
.site-footer:before{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(0,0,0,.72)}
.footer-emblem{position:absolute;z-index:3;left:50%;top:-99px;display:grid;place-items:center;width:198px;height:198px;border-radius:50%;background:#000;transform:translateX(-50%)}
.footer-emblem img{width:112px;height:133px}
.footer-inner{position:relative;z-index:2;width:min(1680px,calc(100% - 80px));min-height:800px;margin:auto;padding-top:114px}
.footer-brand{text-align:center}
.footer-brand h2{margin:0;color:#57eb00;font-size:64px;line-height:1;letter-spacing:-2px}
.footer-brand>p{margin:20px 0 30px;font-size:28px;font-weight:600;line-height:1.3}
.footer-socials{display:flex;justify-content:center;gap:40px}
.footer-socials a{display:grid;place-items:center;width:64px;height:64px;padding:8px;border-radius:8px;background:#fff;transition:transform .25s,box-shadow .25s}
.footer-socials a:hover,.footer-socials a:focus-visible{transform:translateY(-4px);box-shadow:0 8px 24px rgba(145,248,0,.25)}
.footer-socials img{width:48px;height:48px;object-fit:contain}
.footer-columns{display:grid;grid-template-columns:560px minmax(0,1fr) auto;gap:130px;margin-top:82px}
.footer-columns section h3{margin:0 0 40px;color:#91f800;font-size:40px;font-weight:600;line-height:1.2;letter-spacing:-.4px}
.footer-columns ul{margin:0;padding:0;list-style:none}
.footer-columns li{margin:0 0 8px;font-size:21px;line-height:1.4;letter-spacing:.23px}
.footer-contact li{display:flex;align-items:flex-start;gap:12px}
.footer-contact li>span{width:24px;flex:none;color:#aaa;text-align:center}
.footer-contact a,.footer-about a{transition:color .2s}.footer-contact a:hover,.footer-about a:hover{color:#91f800}
.footer-services>div{display:flex;gap:72px}
.footer-services ul{min-width:210px}
.footer-copyright{position:absolute;left:0;right:0;bottom:0;height:80px;margin:0;padding:20px 0;border-top:1px solid #434343;color:rgba(255,255,255,.5);font-size:21px;line-height:1.4}

@media(max-width:1400px){
  .footer-inner{width:min(1180px,calc(100% - 80px))}
  .footer-brand h2{font-size:56px}.footer-brand>p{font-size:22px}
  .footer-columns{grid-template-columns:430px minmax(0,1fr) auto;gap:70px}
  .footer-columns section h3{font-size:32px}
  .footer-columns li,.footer-copyright{font-size:17px}
  .footer-services>div{gap:35px}.footer-services ul{min-width:165px}
}
@media(max-width:900px){
  .site-footer{min-height:0;margin-top:72px;border-radius:80px 80px 0 0;background-position:62% center}
  .site-footer:before{background:rgba(0,0,0,.82)}
  .footer-emblem{top:-72px;width:144px;height:144px}.footer-emblem img{width:76px;height:82px}
  .footer-inner{width:100%;min-height:0;padding:94px 24px 0}
  .footer-brand h2{font-size:46px}.footer-brand>p{font-size:17px}
  .footer-socials{gap:18px}.footer-socials a{width:52px;height:52px}.footer-socials img{width:38px;height:38px}
  .footer-columns{grid-template-columns:1fr 1fr;gap:48px 28px;margin-top:64px}
  .footer-contact{grid-column:1/-1}.footer-columns section h3{margin-bottom:22px;font-size:28px}
  .footer-services>div{display:block}.footer-services ul{min-width:0}
  .footer-copyright{position:static;height:auto;margin-top:52px;padding:22px 0;font-size:15px}
}
@media(max-width:560px){
  .site-footer{border-radius:50px 50px 0 0}
  .footer-brand>p br{display:none}
  .footer-columns{grid-template-columns:1fr}
  .footer-contact{grid-column:auto}
  .footer-columns li{font-size:16px}
}
