:root{--bg:#f4f2ec;--ink:#111;--muted:#777;--line:#d7d4cc;--accent:#d9ff4d;--dark:#111;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}
.header{height:76px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;background:#f4f2ecef;backdrop-filter:blur(16px)}
.brand{font:700 21px "Space Grotesk";letter-spacing:-.07em}.brand span{font-size:9px;margin-left:3px;vertical-align:top}.nav{display:flex;gap:28px;font-size:13px}.nav a{position:relative}.nav a:after{content:"";position:absolute;height:1px;background:#111;left:0;right:100%;bottom:-7px;transition:.3s}.nav a:hover:after{right:0}.menu{display:none;background:none;border:0;font-size:22px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:14px 19px;border-radius:100px;font-weight:700;font-size:13px;transition:transform .3s,box-shadow .3s}.pill b{font-size:16px}.pill.dark{background:#111;color:#fff}.pill.light{background:#fff;color:#111}.pill.outline{border:1px solid #555;color:#fff;background:transparent}.pill.outline:hover{background:#fff;color:#111}.pill:hover{transform:translateY(-3px);box-shadow:0 12px 28px #0002}
.hero{min-height:calc(100vh - 76px);padding:7vw 5vw 6vw;display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:5vw;align-items:center}.kicker{font-size:10px;font-weight:700;letter-spacing:.16em;margin:0 0 22px}.hero h1{font:600 clamp(58px,7.2vw,118px)/.86 "Space Grotesk";letter-spacing:-.08em;margin:0;max-width:900px}.hero h1 i,h2 i{font-style:normal;color:#888}.hero-text{max-width:570px;font-size:18px;line-height:1.6;color:#555;margin:32px 0}.hero-actions{display:flex;align-items:center;gap:24px}.underlink{font-weight:700;font-size:13px}.hero-proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:70px;font-size:9px;font-weight:700;letter-spacing:.1em;color:#777}.hero-visual{height:590px;position:relative;max-width:620px;width:100%;margin:auto}.mock{position:absolute;box-shadow:0 25px 65px #0002;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.mock-bag{width:220px;height:320px;background:#171717;color:#fff;left:27%;top:16%;padding:25px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-5deg);border-radius:3px}.mock-bag small{font-weight:700;letter-spacing:.1em}.mock-bag b{font:600 28px/.9 "Space Grotesk";letter-spacing:-.06em}.mock-card{width:285px;height:170px;background:#fff;right:0;top:8%;padding:25px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(7deg);border-radius:5px}.mock-card b{font:700 26px "Space Grotesk";letter-spacing:-.07em}.mock-card span{font-size:8px;letter-spacing:.12em}.mock-label{width:230px;height:330px;background:#ddd7ca;left:0;bottom:4%;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(9deg);border-radius:4px}.mock-label:before{content:"";position:absolute;width:150px;height:250px;border-radius:75px 75px 18px 18px;background:#faf8f2;box-shadow:0 15px 35px #0002}.mock-label span,.mock-label strong,.mock-label small{position:relative;text-align:center;z-index:1}.mock-label span{font-size:9px}.mock-label strong{font:600 25px/.9 "Space Grotesk";margin:8px}.mock-label small{font-size:7px}.mock-tag{width:125px;height:165px;background:#d9ff4d;right:13%;bottom:10%;padding:22px;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-10deg);clip-path:polygon(0 0,100% 0,100% 86%,50% 100%,0 86%)}.mock-tag b{font:700 38px "Space Grotesk"}.mock-tag small{font-size:7px;font-weight:700;letter-spacing:.12em}.orb{position:absolute;z-index:5;right:26%;bottom:23%;font:600 19px/.9 "Space Grotesk";letter-spacing:-.06em;transform:rotate(-9deg)}.orb strong{color:#777}
.trustbar{background:#111;color:#fff;padding:20px 5vw;display:flex;justify-content:space-between;gap:30px;font-size:9px;font-weight:700;letter-spacing:.12em}.trustitems{display:flex;gap:30px;color:#999}
.section{padding:9vw 5vw}.statement{max-width:1150px}.statement h2,.section-head h2,.feature-copy h2,.trust-grid h2,.link-section h2,.faq-home h2{font:600 clamp(50px,6.4vw,96px)/.88 "Space Grotesk";letter-spacing:-.075em;margin:0}.statement>p:last-child{font-size:18px;line-height:1.6;color:#666;max-width:550px;margin-top:32px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.products-section{padding-top:3vw}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product{background:#e9e6de;border-radius:20px;overflow:hidden;display:block;transition:transform .45s,box-shadow .45s}.product:hover{transform:translateY(-8px);box-shadow:0 25px 55px #00000012}.product-wide{grid-column:auto;display:block}.visual{min-height:320px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.ptext{padding:27px 29px 32px}.product-wide .ptext{display:flex;flex-direction:column;justify-content:center}.ptext>span{font-size:9px;color:#888;letter-spacing:.12em}.ptext h3{font:600 28px "Space Grotesk";letter-spacing:-.04em;margin:12px 0 7px}.ptext p{color:#666;line-height:1.5;margin:0 0 20px;max-width:460px}.ptext strong{font-size:13px}
.product{position:relative}
.product .visual{background:#e7e4dc}
.product .visual .project-image{width:100%;height:100%;min-height:320px;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1);}
.product:hover .visual .project-image{transform:scale(1.035);}
.product .ptext{display:grid;grid-template-columns:auto 1fr;column-gap:18px;align-items:start;padding:24px 25px 27px}
.product .ptext>span{grid-row:1 / span 3;padding-top:5px}
.product .ptext h3{margin:0 0 7px;font-size:25px}
.product .ptext p{grid-column:2;margin:0 0 18px;font-size:14px}
.product .ptext strong{grid-column:2;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.v-card{background:#d9ff4d}.pcard{width:340px;height:200px;background:#fff;border-radius:7px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 30px 50px #0002;transform:rotate(-5deg)}.pcard b{font:700 28px "Space Grotesk";letter-spacing:-.07em}.pcard small{font-size:9px}.v-label{background:#ded8cc}.bottle{width:175px;height:270px;border-radius:85px 85px 16px 16px;background:#faf8f2;box-shadow:0 25px 45px #0002;display:flex;align-items:center;justify-content:center;flex-direction:column}.bottle span{font-size:9px}.bottle b{font:600 24px/.9 "Space Grotesk";text-align:center;margin-top:12px}.v-thanks{background:#d9ff4d}.thanks{width:220px;height:270px;background:#fff;padding:30px;box-shadow:0 25px 45px #0002;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(6deg)}.thanks b{font:600 53px/.82 "Space Grotesk";letter-spacing:-.08em}.thanks small{font-size:10px}.v-tag{background:#222}.hang{width:170px;height:250px;background:#f1eee5;padding:25px;clip-path:polygon(0 0,100% 0,100% 85%,50% 100%,0 85%);box-shadow:0 20px 40px #0004}.hang b{font:700 40px "Space Grotesk"}.hang small{display:block;font-size:8px;margin-top:130px;font-weight:700}.v-brochure{background:#d7d0c3}.fold{width:320px;height:205px;background:#111;color:#fff;padding:28px;transform:rotate(-5deg);box-shadow:0 25px 45px #0003}.fold b{font:600 36px/.86 "Space Grotesk";letter-spacing:-.07em}.v-insert{background:#ddd9d0}.insert{width:280px;height:190px;background:#fff;padding:28px;box-shadow:0 25px 45px #0002;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(4deg)}.insert b{font:600 55px "Space Grotesk";letter-spacing:-.08em}.insert small{font-size:10px}
.moq{background:#111;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.moq h2{font:600 clamp(55px,7vw,105px)/.85 "Space Grotesk";letter-spacing:-.08em;margin:0}.moq>div>p:not(.kicker){max-width:560px;color:#999;line-height:1.6;margin:30px 0}.flow{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:13px;font:600 24px "Space Grotesk"}.flow div{border:1px solid #444;border-radius:100px;padding:20px 25px}.flow div:nth-of-type(2){background:var(--accent);color:#111;border-color:var(--accent)}
.process{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.step{background:var(--bg);padding:30px;min-height:185px}.step span,.trust-card span{font-size:9px;color:#888;letter-spacing:.1em}.step h3{font:600 27px "Space Grotesk";margin:35px 0 8px}.step p,.trust-card p{color:#666;line-height:1.55;margin:0}
.feature{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;background:#e4e1d8}.feature-image{height:500px;display:flex;align-items:center;justify-content:center}.stack{position:relative;width:300px;height:350px}.stack div{position:absolute;width:250px;height:165px;padding:28px;display:flex;align-items:flex-end;font:600 26px "Space Grotesk";box-shadow:0 25px 50px #0002}.stack div:nth-child(1){background:#d9ff4d;top:35px;left:45px;transform:rotate(8deg)}.stack div:nth-child(2){background:#fff;top:100px;left:5px;transform:rotate(-6deg)}.stack div:nth-child(3){background:#111;color:#fff;top:170px;left:65px;transform:rotate(4deg)}.feature-copy>p:not(.kicker){max-width:500px;line-height:1.6;color:#555;margin:30px 0}
.trust-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.trust-card{border-top:1px solid var(--line);padding:20px 0;min-height:220px;transition:transform .4s}.trust-card:hover{transform:translateY(-5px)}.trust-card h3{font:600 25px "Space Grotesk";margin:60px 0 8px}.link-section{background:#e8e5dc}.link-grid{display:grid;grid-template-columns:repeat(2,1fr);margin-top:55px;border-top:1px solid #c8c5bd}.link-grid a{padding:24px 0;border-bottom:1px solid #c8c5bd;font:600 20px "Space Grotesk";display:flex;justify-content:space-between;transition:padding .3s}.link-grid a:hover{padding-left:10px}
.faq-home{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.faq-home details{border-top:1px solid var(--line);padding:22px 0}.faq-home details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font:600 21px "Space Grotesk";display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}.faq-home details p{color:#666;line-height:1.6;max-width:700px}.quote{background:#111;color:#fff;text-align:center;min-height:650px;padding:10vw 5vw;display:flex;flex-direction:column;align-items:center;justify-content:center}.quote h2{font:600 clamp(65px,9vw,135px)/.82 "Space Grotesk";letter-spacing:-.085em;margin:0}.quote>p:not(.kicker){color:#999;max-width:520px;line-height:1.6;margin:30px}.quote-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
footer{background:#111;color:#fff;border-top:1px solid #333;padding:50px 5vw 25px}.footer-main{display:flex;justify-content:space-between;padding-bottom:65px}.footer-main p{color:#888}.invert{color:#fff}.footer-links{display:flex;gap:28px;font-size:13px}.footer-bottom{border-top:1px solid #333;padding-top:20px;color:#777;font-size:11px;display:flex;justify-content:space-between;gap:20px}.footer-bottom a{color:#fff}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.nav,.header>.pill{display:none}.menu{display:block}.hero{grid-template-columns:1fr;padding-top:65px}.hero-visual{height:500px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-wide{grid-column:auto;display:block}.process,.moq,.feature,.faq-home{grid-template-columns:1fr}.trust-cards{grid-template-columns:repeat(2,1fr)}.footer-main{display:block}.footer-links{margin-top:30px}}
@media(max-width:600px){.header{height:68px}.hero{padding-top:55px}.hero h1{font-size:54px}.hero-visual{height:390px}.mock-bag{width:155px;height:225px;left:24%;top:16%;padding:18px}.mock-bag b{font-size:20px}.mock-card{width:200px;height:120px;padding:18px}.mock-card b{font-size:19px}.mock-label{width:160px;height:230px}.mock-label:before{width:110px;height:175px}.mock-label strong{font-size:18px}.mock-tag{width:90px;height:120px;right:6%}.mock-tag b{font-size:27px}.orb{font-size:13px;right:20%;bottom:19%}.trustbar{display:block}.trustitems{flex-wrap:wrap;margin-top:14px;gap:14px}.section{padding:18vw 5vw}.statement h2,.section-head h2,.feature-copy h2,.trust-grid h2,.link-section h2,.faq-home h2{font-size:48px}.section-head{display:block}.section-head>.underlink{display:inline-block;margin-top:25px}.product-grid{grid-template-columns:1fr}.visual{min-height:280px}.pcard{width:260px;height:155px}.product .ptext{padding:23px}.flow{font-size:17px;margin-top:35px}.flow div{padding:15px 17px}.steps{grid-template-columns:1fr}.trust-cards{grid-template-columns:1fr}.link-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom>*{display:block;margin:8px 0}.quote{min-height:560px}.quote h2{font-size:61px}.quote-actions{flex-direction:column;width:100%}.quote-actions .pill{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.pill,.product,.mock{transition:none}}

.breadcrumbs{font-size:11px;color:#888;margin:0 0 30px}.breadcrumbs a{text-decoration:underline}.product-hero{padding-bottom:6vw}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#e8e5dc;align-items:center}.product-detail-visual{min-height:480px;display:flex;align-items:center;justify-content:center}.detail-card{width:min(80%,430px);aspect-ratio:1.35;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;font:600 34px/.95 "Space Grotesk";letter-spacing:-.06em;box-shadow:0 30px 60px #0003;transform:rotate(-5deg)}.detail-copy>p:not(.kicker){max-width:560px;color:#555;line-height:1.6}.spec-list{margin-top:35px;border-top:1px solid #c8c5bd}.spec-list div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid #c8c5bd;font-size:13px}.spec-list span{font-size:9px;color:#888;letter-spacing:.12em}.spec-list b{font-weight:600}.product-process{background:#f4f2ec}.product-process>h2{font:600 clamp(50px,6vw,90px)/.9 "Space Grotesk";letter-spacing:-.07em;margin:0 0 50px}.product-process .steps{margin-top:0}.mini-quote{min-height:500px}@media(max-width:800px){.product-detail{grid-template-columns:1fr}.product-detail-visual{min-height:350px}.detail-card{width:75%}}@media(max-width:600px){.product-process .steps{grid-template-columns:1fr}.spec-list div{display:block}.spec-list b{display:block;margin-top:7px}}

/* =========================================================
   LUNETRA V4 — INTERNAL PAGE DESIGN SYSTEM
   ========================================================= */

.page-hero{
  max-width:1500px;margin:0 auto;padding:105px 5vw 90px;
  position:relative;overflow:hidden;
}
.page-hero:before{
  content:"";position:absolute;width:520px;height:520px;border-radius:50%;
  background:#d9ff4d;right:-170px;top:-230px;opacity:.8;z-index:-1;
}
.page-hero .eyebrow,.editorial .eyebrow{
  font-size:10px;line-height:1;font-weight:700;letter-spacing:.17em;
  margin:0 0 24px;
}
.page-hero .crumb{
  font-size:11px;color:#85837d;margin:0 0 34px;
}
.page-hero .crumb a{text-decoration:underline;text-underline-offset:4px}
.page-hero h1{
  max-width:1180px;margin:0;
  font:600 clamp(58px,8vw,126px)/.84 "Space Grotesk",sans-serif;
  letter-spacing:-.085em;
}
.page-hero h1 i{font-style:normal;color:#888}
.page-hero .intro{
  max-width:670px;margin:34px 0 30px;
  color:#666;font-size:19px;line-height:1.65;
}

.editorial{
  max-width:1500px;margin:0 auto;padding:105px 5vw;
}
.editorial.two-col{
  display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:9vw;align-items:start;
}
.editorial h2{
  margin:0;
  font:600 clamp(48px,6.3vw,94px)/.88 "Space Grotesk",sans-serif;
  letter-spacing:-.075em;
}
.editorial h2 i{font-style:normal;color:#888}
.editorial p{
  color:#62615c;font-size:17px;line-height:1.72;max-width:690px;
}
.editorial .intro{
  font-size:17px;line-height:1.7;color:#666;max-width:650px;
}

.dark-band{
  max-width:none;background:#111;color:#fff;padding-left:5vw;padding-right:5vw;
}
.dark-band h2{color:#fff}
.dark-band p{color:#999}

.cards{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;margin-top:55px;
}
.info-card{
  background:#e9e6de;border-radius:18px;padding:30px;
  min-height:235px;display:flex;flex-direction:column;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s;
}
.info-card:hover{transform:translateY(-8px);box-shadow:0 24px 55px #00000014}
.info-card span{
  font-size:9px;color:#888;letter-spacing:.13em;font-weight:700;
}
.info-card h3{
  margin:auto 0 9px;
  font:600 27px/1 "Space Grotesk",sans-serif;letter-spacing:-.045em;
}
.info-card p{margin:0!important;font-size:15px!important;line-height:1.55!important;color:#666!important}

.feature-visual{
  min-height:500px;border-radius:24px;background:#ddd8ca;
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
}
.feature-visual:after{
  content:"L";position:absolute;right:-30px;bottom:-90px;
  font:700 340px/.8 "Space Grotesk";color:#ffffff35;
}
.paper-stack{width:300px;height:350px;position:relative;z-index:1}
.paper-stack div{
  position:absolute;width:260px;height:175px;padding:28px;
  display:flex;align-items:flex-end;box-shadow:0 25px 55px #0002;
  font:600 28px/1 "Space Grotesk";letter-spacing:-.05em;
}
.paper-stack div:nth-child(1){background:#fff;top:5px;left:35px;transform:rotate(8deg)}
.paper-stack div:nth-child(2){background:#d9ff4d;top:82px;left:0;transform:rotate(-7deg)}
.paper-stack div:nth-child(3){background:#111;color:#fff;top:160px;left:48px;transform:rotate(4deg)}

.timeline{margin-top:60px;border-top:1px solid #3b3b3b}
.timeline-item{
  display:grid;grid-template-columns:70px 1fr 1fr;gap:25px;
  padding:30px 0;border-bottom:1px solid #3b3b3b;align-items:start;
}
.timeline-item .num{font-size:10px;color:#888;letter-spacing:.12em}
.timeline-item h3{
  margin:0;font:600 28px/1.05 "Space Grotesk";letter-spacing:-.04em;
}
.timeline-item p{margin:0;color:#999!important}

.review-panel{
  background:#e9e6de;border-radius:24px;padding:48px;margin-top:45px;
  max-width:850px;
}
.review-panel .stars{font-size:23px;letter-spacing:5px}
.review-panel h3{font:600 35px "Space Grotesk";letter-spacing:-.04em;margin:20px 0 8px}
.review-panel p{margin-bottom:22px}

.policy-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 45px;margin-top:45px;
}
.policy{border-top:1px solid #bdbab1;padding:25px 0}
.policy h3{font:600 25px "Space Grotesk";letter-spacing:-.04em;margin:0 0 10px}
.policy p{margin:0!important;font-size:15px!important}

.product-visual-v3{
  min-height:530px;background:#e7e3da;position:relative;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;border-radius:24px;
}
.product-visual-v3:before{
  content:"";position:absolute;width:300px;height:300px;
  border-radius:50%;background:#d9ff4d;right:-110px;bottom:-120px;
}
.v3-object{
  width:min(78%,410px);aspect-ratio:1.45;background:#fff;
  box-shadow:0 35px 70px #00000025;
  display:flex;flex-direction:column;justify-content:space-between;
  padding:34px;font:600 34px/.9 "Space Grotesk";letter-spacing:-.065em;
  transform:rotate(-6deg);position:relative;z-index:1;
  transition:transform .65s cubic-bezier(.2,.8,.2,1);
}
.product-visual-v3:hover .v3-object{transform:rotate(-1deg) translateY(-12px)}
.v3-object small{font:600 9px/1 "DM Sans";letter-spacing:.14em;color:#888}

.product-process{
  max-width:none;background:#f4f2ec;
}
.product-process>h2{
  font:600 clamp(50px,6vw,90px)/.88 "Space Grotesk";
  letter-spacing:-.075em;margin:0 0 50px;
}
.product-process .steps{margin-top:0}

.faq-list{max-width:950px;margin-top:55px}
.faq-list details{
  border-top:1px solid #c6c3ba;padding:25px 0;
}
.faq-list details:last-child{border-bottom:1px solid #c6c3ba}
.faq-list summary{
  font:600 22px "Space Grotesk";cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;gap:25px;
}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{color:#888}
.faq-list p{max-width:760px;margin:18px 0 0!important;color:#666!important}

.contact-grid{
  display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:10vw;
}
.contact-links{margin-top:10px;border-top:1px solid #bbb}
.contact-links a{
  display:flex;justify-content:space-between;align-items:center;
  padding:25px 0;border-bottom:1px solid #bbb;
  font:600 22px "Space Grotesk";letter-spacing:-.03em;
  transition:padding .3s;
}
.contact-links a:hover{padding-left:12px}

.cta-band{
  max-width:none;background:#d9ff4d;text-align:center;
  padding:110px 5vw;
}
.cta-band .eyebrow{font-size:10px;font-weight:700;letter-spacing:.17em}
.cta-band h2{
  margin:0;font:600 clamp(55px,7vw,108px)/.84 "Space Grotesk";
  letter-spacing:-.08em;
}
.cta-band h2 i{font-style:normal;color:#777}
.cta-band p{max-width:560px;margin:30px auto;color:#555;line-height:1.6}

@media(max-width:900px){
  .page-hero{padding-top:75px}
  .editorial.two-col,.contact-grid{grid-template-columns:1fr;gap:55px}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline-item{grid-template-columns:55px 1fr}
  .timeline-item p{grid-column:2}
}
@media(max-width:600px){
  .page-hero{padding:65px 5vw 65px}
  .page-hero h1{font-size:55px}
  .page-hero .intro{font-size:17px}
  .editorial{padding:75px 5vw}
  .editorial h2{font-size:48px}
  .cards,.policy-grid{grid-template-columns:1fr}
  .info-card{min-height:200px}
  .timeline-item{display:block}
  .timeline-item h3{margin:13px 0 8px;font-size:25px}
  .product-visual-v3,.feature-visual{min-height:370px}
  .v3-object{width:75%;font-size:25px;padding:25px}
  .contact-links a{font-size:18px}
  .cta-band{padding:80px 5vw}
  .cta-band h2{font-size:60px}
}


/* LUNETRA TYPOGRAPHY LOCK — keep homepage + internal pages identical */
html, body {
  font-family: "DM Sans", Arial, sans-serif !important;
}
body, p, li, a, button, input, textarea, select {
  font-family: "DM Sans", Arial, sans-serif;
}
h1, h2, h3, h4, h5, h6,
.brand, .nav, .pill, .kicker, .eyebrow,
summary, .timeline-item h3, .info-card h3,
.policy h3, .contact-links a, .v3-object {
  font-family: "Space Grotesk", Arial, sans-serif !important;
}
.brand {
  font-weight: 700;
  letter-spacing: -0.07em;
}
.nav {
  font-weight: 500;
}

/* Real project photography */
.project-image{width:100%;height:100%;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1);}
.product-visual-v3.photo-visual{padding:0;background:#e7e3da;}
.product-visual-v3.photo-visual:before{z-index:0;}
.product-visual-v3.photo-visual .v3-photo{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;display:block;}
.product-visual-v3.photo-visual:hover .v3-photo{transform:scale(1.025);}
.v3-photo-caption{position:absolute;z-index:2;left:22px;bottom:20px;background:#111;color:#fff;padding:9px 12px;font:600 10px/1 "DM Sans",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;}
.portfolio-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:45px;}
.work-item{margin:0;background:#e9e6de;border-radius:20px;overflow:hidden;min-width:0;}
.work-item:nth-child(1),.work-item:nth-child(2),.work-item:nth-child(9),.work-item:nth-child(10){grid-column:span 6;}
.work-item:nth-child(3),.work-item:nth-child(4),.work-item:nth-child(5),.work-item:nth-child(6),.work-item:nth-child(7),.work-item:nth-child(8),.work-item:nth-child(11),.work-item:nth-child(12),.work-item:nth-child(13),.work-item:nth-child(14),.work-item:nth-child(15),.work-item:nth-child(16),.work-item:nth-child(17),.work-item:nth-child(18),.work-item:nth-child(19),.work-item:nth-child(20){grid-column:span 3;}
.work-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1);}
.work-item:hover img{transform:scale(1.035);}
.work-caption{padding:16px 18px 19px;}
.work-caption span{display:block;font-size:9px;color:#888;letter-spacing:.12em;margin-bottom:7px;}
.work-caption strong{font:600 20px/1.05 "Space Grotesk",Arial,sans-serif;letter-spacing:-.04em;}
@media(max-width:900px){.portfolio-gallery{grid-template-columns:repeat(2,minmax(0,1fr));}.work-item,.work-item:nth-child(n){grid-column:span 1;}.work-item:nth-child(1),.work-item:nth-child(2),.work-item:nth-child(9),.work-item:nth-child(10){grid-column:span 2;}}
@media(max-width:600px){.portfolio-gallery{grid-template-columns:1fr;}.work-item,.work-item:nth-child(n){grid-column:span 1!important;}.work-item img{aspect-ratio:4/3;}}

/* =========================================================
   LUNETRA — WORK DETAILS / CASE STUDY PAGE
   ========================================================= */
.work-detail-hero{padding-bottom:70px}
.hero-proof-row{display:flex;gap:34px;flex-wrap:wrap;margin-top:52px;padding-top:22px;border-top:1px solid var(--line);font-size:9px;font-weight:700;letter-spacing:.14em;color:#777}
.work-detail-feature{max-width:1500px;margin:0 auto;padding:85px 5vw;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:7vw;align-items:center}
.work-detail-feature.reverse{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.work-detail-feature-copy{max-width:610px}
.work-detail-feature-copy h2,.detail-intro h2,.work-detail-process h2,.seo-copy h2{margin:0 0 24px;font:600 clamp(45px,5.7vw,82px)/.9 "Space Grotesk",sans-serif;letter-spacing:-.075em}
.work-detail-feature-copy h2 i,.detail-intro h2 i,.work-detail-process h2 i,.seo-copy h2 i{font-style:normal;color:#888}
.work-detail-feature-copy p,.detail-intro p,.seo-columns p{font-size:17px;line-height:1.72;color:#666;max-width:650px}
.detail-image{height:620px;border-radius:24px;overflow:hidden;background:#ddd8ca;box-shadow:0 25px 70px #00000012}
.detail-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.detail-image:hover img{transform:scale(1.035)}
.detail-tags{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0}
.detail-tags span{border:1px solid #c9c6be;border-radius:100px;padding:9px 12px;font-size:10px;font-weight:700;letter-spacing:.04em;color:#555}
.work-detail-grid{max-width:1500px;margin:0 auto;padding:110px 5vw;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw;align-items:center}
.detail-image.tall{height:600px}
.work-detail-grid .detail-intro{max-width:620px}
.dark-work{max-width:none;background:#111;color:#fff;padding-left:5vw;padding-right:5vw}
.dark-work .detail-intro p{color:#999}
.dark-work .eyebrow{color:#aaa}
.dark-work .detail-intro h2 i{color:#777}
.detail-mosaic{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:12px;min-height:620px}
.detail-mosaic figure{margin:0;overflow:hidden;border-radius:18px;background:#222}
.detail-mosaic figure:first-child{grid-row:1 / span 2}
.detail-mosaic figure:last-child{grid-column:2}
.detail-mosaic img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.detail-mosaic figure:hover img{transform:scale(1.04)}
.work-detail-process{max-width:1500px;margin:0 auto;padding:110px 5vw}
.process-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c7c4bc;margin-top:58px}
.process-strip>div{padding:27px 22px 20px 0;border-bottom:1px solid #c7c4bc;min-height:205px}
.process-strip>div+div{border-left:1px solid #c7c4bc;padding-left:22px}
.process-strip span{font-size:10px;color:#888;letter-spacing:.12em;font-weight:700}
.process-strip h3{font:600 23px/1.05 "Space Grotesk";letter-spacing:-.04em;margin:55px 0 9px}
.process-strip p{font-size:14px;line-height:1.55;color:#666;margin:0;max-width:240px}
.seo-copy{max-width:1500px;margin:0 auto;padding:100px 5vw 115px;border-top:1px solid var(--line)}
.seo-copy h2{max-width:980px}
.seo-columns{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:32px}
.seo-columns p{margin:0;max-width:680px}
@media(max-width:900px){
 .work-detail-feature,.work-detail-feature.reverse,.work-detail-grid{grid-template-columns:1fr;gap:45px}
 .work-detail-feature.reverse .detail-image{order:0}
 .detail-image,.detail-image.tall{height:500px}
 .detail-mosaic{min-height:500px}
 .process-strip{grid-template-columns:1fr 1fr}
 .process-strip>div+div{border-left:0;padding-left:0}
 .seo-columns{grid-template-columns:1fr;gap:10px}
}
@media(max-width:600px){
 .work-detail-hero{padding-bottom:55px}
 .hero-proof-row{gap:18px}
 .work-detail-feature,.work-detail-grid,.work-detail-process,.seo-copy{padding-top:75px;padding-bottom:75px}
 .detail-image,.detail-image.tall{height:390px;border-radius:18px}
 .detail-mosaic{grid-template-columns:1fr;grid-template-rows:repeat(3,210px);min-height:auto}
 .detail-mosaic figure:first-child{grid-row:auto}
 .detail-mosaic figure:last-child{grid-column:auto}
 .process-strip{grid-template-columns:1fr}
 .process-strip>div,.process-strip>div+div{border-left:0;padding-left:0;min-height:auto;padding-bottom:28px}
 .process-strip h3{margin-top:25px}
 .work-detail-feature-copy h2,.detail-intro h2,.work-detail-process h2,.seo-copy h2{font-size:48px}
}

.work-more{display:inline-block;margin-top:10px;font-size:11px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.work-item .work-more{opacity:.75;transition:.25s}.work-item:hover .work-more{opacity:1}

/* Clickable portfolio cards */
.portfolio-gallery .work-item{display:block;color:inherit;text-decoration:none;cursor:pointer;}
.portfolio-gallery .work-item:focus-visible{outline:2px solid #111;outline-offset:4px;}
.portfolio-gallery .work-item:hover .work-caption strong{opacity:.72;transition:opacity .25s ease;}

/* =========================================================
   PORTFOLIO — PINTEREST-STYLE MASONRY GALLERY
   ========================================================= */
.portfolio-gallery{
  display:block;
  column-count:4;
  column-gap:22px;
  margin-top:48px;
}
.portfolio-gallery .work-item{
  display:inline-block;
  width:100%;
  margin:0 0 34px;
  padding:0;
  background:transparent;
  border-radius:0;
  overflow:visible;
  min-width:0;
  vertical-align:top;
  break-inside:avoid;
  -webkit-column-break-inside:avoid;
  page-break-inside:avoid;
  color:inherit;
  text-decoration:none;
}
.portfolio-gallery .work-item img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:initial;
  border-radius:18px;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease;
}
.portfolio-gallery .work-item:hover img{
  transform:translateY(-3px) scale(1.012);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}
.portfolio-gallery .work-caption{
  padding:12px 4px 0;
  background:transparent;
}
.portfolio-gallery .work-caption span{
  display:block;
  margin:0 0 7px;
  font:600 9px/1.2 "Space Grotesk",Arial,sans-serif;
  color:#8a8882;
  letter-spacing:.12em;
}
.portfolio-gallery .work-caption strong{
  display:block;
  font:600 18px/1.08 "Space Grotesk",Arial,sans-serif;
  letter-spacing:-.045em;
}
.portfolio-gallery .work-item:hover .work-caption strong{
  opacity:1;
}
@media(max-width:1100px){
  .portfolio-gallery{column-count:3;}
}
@media(max-width:760px){
  .portfolio-gallery{column-count:2;column-gap:16px;margin-top:36px;}
  .portfolio-gallery .work-item{margin-bottom:26px;}
  .portfolio-gallery .work-item img{border-radius:14px;}
  .portfolio-gallery .work-caption{padding-top:10px;}
}
@media(max-width:500px){
  .portfolio-gallery{column-count:1;}
}

/* =========================================================
   HOMEPAGE HERO — CLEAN EDITORIAL RIGHT VISUAL
   ========================================================= */
.hero-visual-clean{height:590px;max-width:620px;position:relative;isolation:isolate}
.hero-frame{position:absolute;left:7%;top:2%;width:78%;height:88%;background:transparent;padding:0;border:0;box-shadow:0 35px 80px #0000001f;overflow:hidden;z-index:2}
.hero-frame img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter:saturate(.94)}
.hero-slideshow .hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.015);transition:opacity .8s ease,visibility .8s ease,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.hero-slideshow .hero-slide.active{opacity:1;visibility:visible;transform:scale(1)}
.hero-visual-clean:hover .hero-slideshow .hero-slide.active{transform:scale(1.025)}
.hero-rail{position:absolute;right:0;top:7%;width:18%;height:79%;background:#111;color:#fff;z-index:3;padding:22px 17px;display:flex;flex-direction:column;align-items:center;justify-content:space-between}
.hero-rail span{font:600 10px "DM Sans";letter-spacing:.14em;color:#999;align-self:flex-end}
.hero-rail div{width:1px;height:42%;background:#555}
.hero-rail strong{font:600 14px/.95 "Space Grotesk";letter-spacing:-.04em;align-self:flex-start}
.hero-note{position:absolute;left:0;bottom:0;width:47%;background:#f4f2ec;border-top:1px solid #c9c6bd;padding:18px 20px 16px;z-index:4}
.hero-note span{display:block;font:700 8px "DM Sans";letter-spacing:.15em;color:#777;margin-bottom:10px}
.hero-note b{font:600 18px/.98 "Space Grotesk";letter-spacing:-.045em}
.hero-accent{position:absolute;right:8%;bottom:2%;width:62px;height:62px;background:var(--accent);z-index:1}

@media(max-width:900px){
  .hero-visual-clean{height:500px;max-width:620px}
  .hero-frame{left:6%;width:78%;height:88%}
  .hero-rail{width:19%;height:78%}
}
@media(max-width:600px){
  .hero-visual-clean{height:390px;margin-top:20px}
  .hero-frame{left:3%;top:2%;width:80%;height:88%;padding:7px}
  .hero-rail{right:0;top:7%;width:22%;height:77%;padding:15px 10px}
  .hero-rail strong{font-size:10px}
  .hero-note{width:58%;padding:13px 14px 12px}
  .hero-note b{font-size:14px}
  .hero-accent{width:42px;height:42px;right:6%;bottom:1%}
}
