@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Instrument+Serif:ital@0;1&family=Playfair+Display:ital,wght@1,500&display=swap');:root{--bg:#090909;--paper:#e9e3d8;--muted:#a8a39a;--gold:#c7a66a;--line:rgba(255,255,255,.16);--pad:clamp(22px,5vw,78px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f5f2eb;font-family:"DM Sans",sans-serif}.grain{position:fixed;inset:0;pointer-events:none;z-index:99;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}.nav{position:fixed;top:0;left:0;right:0;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);z-index:80;background:linear-gradient(#090909c9,transparent);backdrop-filter:blur(4px)}.brand{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.19em}.brand b{font-weight:400;color:var(--gold)}.logo{width:35px;height:35px;fill:none;stroke:#f4efe5;stroke-width:2.5}.logo .accent{stroke:var(--gold)}nav{display:flex;gap:28px;font-size:12px;color:#d0cbc2}.pill{border:1px solid var(--line);padding:11px 17px;border-radius:999px;font-size:12px}.photo-section{position:relative;background-image:url('https://images.unsplash.com/photo-1737474707380-5ef35770d8a7?auto=format&crop=faces%2Cedges&fit=crop&h=1400&q=82&w=2200');background-size:cover;background-position:center}.hero{min-height:100svh;display:flex;align-items:flex-end;padding:140px var(--pad) 90px}.hero-shade,.darkwash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.94),rgba(5,5,5,.55) 50%,rgba(5,5,5,.2)),linear-gradient(0deg,rgba(5,5,5,.72),transparent 55%)}.hero-content{position:relative;z-index:2;max-width:920px}.kicker{font-size:11px;letter-spacing:.23em;text-transform:uppercase;color:var(--gold);margin:0 0 20px}.hero h1,.section-content h2,.contact h2,dialog h2{font-size:clamp(52px,8vw,118px);line-height:.88;letter-spacing:-.055em;font-weight:300;margin:0}.hero h1 i{font-family:"Playfair Display",serif;font-weight:500;color:var(--paper)}.lede{max-width:650px;color:#d0cbc2;font-size:clamp(16px,2vw,21px);line-height:1.6;margin:30px 0}.lede.small{font-size:17px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid var(--line);font-size:12px;letter-spacing:.05em;cursor:pointer}.button.gold{background:var(--gold);border-color:var(--gold);color:#111}.button.ghost{background:rgba(10,10,10,.35);backdrop-filter:blur(8px)}.scroll-note{position:absolute;right:var(--pad);bottom:40px;z-index:2;font-size:9px;letter-spacing:.2em;color:#aaa}.assemble-section{height:170vh;position:relative;background:#0a0a0a}.triangle-stage{position:sticky;top:0;height:100vh;overflow:hidden}.triangle-piece{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1737474707380-5ef35770d8a7?auto=format&crop=faces%2Cedges&fit=crop&h=1400&q=82&w=2200');background-size:cover;background-position:center;will-change:transform,opacity;filter:saturate(.65) contrast(1.05)}.assemble-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.83),rgba(5,5,5,.25)),linear-gradient(0deg,rgba(5,5,5,.75),transparent 50%);pointer-events:none}.section-content{position:relative;z-index:4;padding:120px var(--pad);max-width:1600px;margin:auto}.assemble-section>.section-content{position:absolute;inset:0;display:flex;align-items:center}.split{display:grid!important;grid-template-columns:1.25fr .75fr;gap:8vw}.section-content h2{font-size:clamp(42px,6vw,88px)}.glass-copy{align-self:end;background:rgba(12,12,12,.58);border:1px solid var(--line);backdrop-filter:blur(15px);padding:30px;line-height:1.7;color:#d7d2c9}.micro{font-size:11px;line-height:1.6;color:#999}.services{min-height:100vh}.darkwash{background:rgba(4,4,4,.8)}.darkwash.heavy{background:rgba(4,4,4,.88)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-grid article{min-height:300px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(12,12,12,.42)}.service-grid span,.label{font-size:10px;letter-spacing:.18em;color:var(--gold)}.service-grid h3{font-size:24px;font-weight:400;margin:90px 0 16px}.service-grid p{font-size:13px;line-height:1.65;color:#aaa}.templates{background:#e8e2d7;color:#111}.templates .kicker{color:#765d32}.section-head{display:grid;grid-template-columns:1fr .65fr;gap:8vw;align-items:end;margin-bottom:55px}.section-head p:last-child{line-height:1.7;color:#59554e}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.template-card{border-top:1px solid #bdb6aa;padding-top:12px}.template-preview{aspect-ratio:1.45;background:#171717;color:#fff;padding:18px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.template-preview:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 25%,rgba(199,166,106,.5),transparent 28%),linear-gradient(135deg,#0d0d0d,#333);opacity:.9}.template-preview:after{content:"";position:absolute;width:55%;height:140%;right:-18%;top:-25%;border:1px solid rgba(255,255,255,.25);transform:rotate(22deg)}.template-card:nth-child(3n+2) .template-preview:before{background:radial-gradient(circle at 30% 70%,rgba(233,227,216,.5),transparent 25%),linear-gradient(145deg,#161616,#59544b)}.template-card:nth-child(3n) .template-preview:before{background:linear-gradient(120deg,#070707 45%,#8b7552 45%,#b49a70 48%,#171717 48%)}.mini-nav,.mini-copy,.mini-line{position:relative;z-index:2}.mini-nav{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.18em}.mini-copy{display:flex;flex-direction:column}.mini-copy small{color:#c7a66a}.mini-copy strong{font-size:clamp(22px,2.4vw,42px);font-weight:300;letter-spacing:-.04em}.mini-copy em{font-family:"Playfair Display",serif;color:#d5cfc4}.mini-line{height:1px;background:rgba(255,255,255,.4)}.template-meta{display:flex;justify-content:space-between;gap:10px;padding:14px 2px 28px}.template-meta h3{margin:4px 0;font-size:18px;font-weight:500}.eyebrow{font-size:9px;color:#716b61;text-transform:uppercase;letter-spacing:.13em}.text-link{border:0;background:none;padding:0;align-self:end;font:inherit;font-size:11px;cursor:pointer;color:#665b4b}.questionnaire{min-height:100vh}.questionnaire-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:5vw;align-items:center}.pdf-shell{background:#111;border:1px solid var(--line);box-shadow:0 40px 90px rgba(0,0,0,.45)}.pdf-top{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;font-size:9px;letter-spacing:.15em;color:#aaa;border-bottom:1px solid var(--line)}iframe{width:100%;height:72vh;border:0;background:#eee}.contact{min-height:90vh}.contact-grid{display:grid;grid-template-columns:1fr .65fr;gap:10vw;align-items:center}.contact-panel{border:1px solid var(--line);padding:34px;background:rgba(10,10,10,.55);backdrop-filter:blur(12px)}.contact-panel>a:not(.button){font-size:24px;display:block;margin:8px 0 32px}.contact-panel p{color:#b8b2a9}.full{width:100%;margin-top:20px}footer{min-height:170px;padding:50px var(--pad);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);font-size:11px;color:#888}.footer-brand{color:#fff}dialog{max-width:620px;background:#111;color:#eee;border:1px solid #444;padding:42px;box-shadow:0 30px 100px #000}dialog::backdrop{background:rgba(0,0,0,.8);backdrop-filter:blur(7px)}dialog h2{font-size:50px;margin-bottom:25px}.close{position:absolute;right:15px;top:12px;background:none;border:0;color:white;font-size:30px;cursor:pointer}@media(max-width:900px){nav,.pill{display:none}.split,.section-head,.questionnaire-layout,.contact-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.template-grid{grid-template-columns:1fr 1fr}iframe{height:65vh}footer{gap:20px;flex-wrap:wrap}}@media(max-width:560px){.hero h1{font-size:55px}.service-grid,.template-grid{grid-template-columns:1fr}.service-grid article{min-height:230px}.service-grid h3{margin-top:55px}.section-content{padding-top:90px;padding-bottom:90px}.assemble-section{height:150vh}.template-preview{aspect-ratio:1.25}.contact-panel>a:not(.button){font-size:18px}}
.nav.solid{background:#090909eF;border-bottom:1px solid var(--line)}.inner-page{padding-top:84px}.inner-hero{min-height:100vh}.inner-lede{max-width:720px;line-height:1.7;color:#5e594f;margin:25px 0 60px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.work-card{color:#111}.work-art{height:420px;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;background:#171717;color:white;position:relative;overflow:hidden}.work-art:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(199,166,106,.45),transparent 28%),linear-gradient(145deg,#0b0b0b,#494239)}.work-art.service:before{background:linear-gradient(125deg,#0b0b0b 45%,#806b49 45%,#b99d6e 47%,#181818 47%)}.work-art span,.work-art strong{position:relative;z-index:1}.work-art span{font-size:10px;letter-spacing:.18em;color:#c7a66a}.work-art strong{font-size:42px;font-weight:300;margin-top:8px}.work-meta{display:flex;justify-content:space-between;align-items:center}.work-meta h3{font-weight:500}.work-meta span{font-size:11px}.process{background:#0d0d0d}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;border-top:1px solid var(--line)}.process-grid>div{padding:28px;border-right:1px solid var(--line);min-height:240px}.process-grid span{color:var(--gold);font-size:10px}.process-grid h3{margin-top:70px;font-weight:400}.process-grid p{color:#999;line-height:1.6;font-size:13px}.testimonials{min-height:80vh}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:60px}.quote-grid blockquote{margin:0;padding:38px;border:1px solid var(--line);background:rgba(10,10,10,.55);font-family:"Instrument Serif",Georgia,serif;font-style:normal;font-size:25px;line-height:1.45;letter-spacing:-.01em}.quote-grid footer{padding:25px 0 0;min-height:auto;border:0;font-family:"DM Sans";color:var(--gold)}.faq{background:#e8e2d7;color:#111}.faq .kicker{color:#765d32}.faq-list{max-width:950px;margin-top:60px}.faq details{border-top:1px solid #b8b0a4;padding:22px 0}.faq details:last-child{border-bottom:1px solid #b8b0a4}.faq summary{font-size:19px;cursor:pointer}.faq details p{max-width:720px;line-height:1.7;color:#5c574f}.final-cta{min-height:80vh;display:flex;align-items:center}.standalone{min-height:calc(100vh - 84px);background:linear-gradient(135deg,#080808,#1a1815)}.return-box{margin-top:40px;border-top:1px solid var(--line);padding-top:24px}.return-box li{margin:8px 0;color:#bbb}.upload-form{margin-top:30px;display:grid;gap:14px}.upload-form label{display:grid;gap:7px;font-size:11px;letter-spacing:.08em;color:#aaa}.upload-form input,.upload-form textarea{width:100%;padding:13px;background:#111;border:1px solid #393939;color:white;font:inherit}.upload-form .button{justify-self:start}.expanded{grid-template-columns:repeat(4,1fr);flex-wrap:wrap}.expanded article{min-height:270px}.expanded article h3{margin-top:55px}@media(max-width:900px){.work-grid,.process-grid,.quote-grid{grid-template-columns:1fr 1fr}.expanded{grid-template-columns:1fr 1fr}}@media(max-width:560px){.work-grid,.process-grid,.quote-grid,.expanded{grid-template-columns:1fr}.work-art{height:300px}.inner-page{padding-top:70px}}


/* ===== Towers Studio: stable 150-piece shattered-photo assembly ===== */
#triangleStage.triangle-stage {
  position:absolute;
  inset:0;
  overflow:hidden;
  contain:layout paint;
  pointer-events:none;
}
#triangleStage .triangle-piece {
  position:absolute;
  left:calc(var(--c) * (100% / 15));
  top:calc(var(--r) * (100% / 5));
  width:calc((100% / 15) + 1px);
  height:calc((100% / 5) + 1px);
  background-image:url("https://images.unsplash.com/photo-1737474707380-5ef35770d8a7?auto=format&crop=faces%2Cedges&fit=crop&h=1400&q=82&w=2200");
  background-size:1500% 500%;
  background-position:calc(var(--c) * (100% / 14)) calc(var(--r) * (100% / 4));
  background-repeat:no-repeat;
  transform:
    translate(
      calc(var(--sx) * (1 - var(--p,0))),
      calc(var(--sy) * (1 - var(--p,0)))
    )
    rotate(calc(var(--sr) * (1 - var(--p,0))))
    scale(calc(.72 + (.28 * var(--p,0))));
  transform-origin:center;
  will-change:transform,opacity;
  backface-visibility:hidden;
}
@media (prefers-reduced-motion: reduce) {
  #triangleStage .triangle-piece {
    transform:none !important;
    opacity:1 !important;
  }
}

.assemble-section{min-height:106vh;position:relative}.assemble-section .triangle-stage{position:sticky;top:0;height:100vh}

/* V2: quicker, more visible shattered-image moment */
.assembly-details{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.assembly-details span{padding:8px 10px;border:1px solid rgba(255,255,255,.2);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#ddd6ca;background:rgba(8,8,8,.32)}
.assembly-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:22px}
.assembly-actions a{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#c8a66a;border-bottom:1px solid rgba(200,166,106,.5);padding-bottom:5px}
.assembly-floating{position:absolute;z-index:5;left:var(--pad,5vw);right:var(--pad,5vw);bottom:12vh;max-width:620px;padding:22px;background:rgba(8,8,8,.68);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px)}
@media(max-width:700px){.assemble-section{min-height:106vh}.assembly-details span{font-size:9px}.assembly-floating{bottom:8vh}}

/* ===== V3 genuinely varied Design Library ===== */
.design-library{background:#e9e2d7;color:#111;padding:130px var(--pad,5vw) 100px}
.design-intro{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:end;margin-bottom:65px}
.design-intro h1{font:400 clamp(48px,7vw,92px)/.92 Georgia,serif;letter-spacing:-.05em;margin:0}
.design-intro>p:last-child{max-width:600px;color:#655f57;line-height:1.7}
.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 24px}
.choice-preview{position:relative;aspect-ratio:1.55;background:var(--preview-bg);overflow:hidden;padding:24px;color:white}
.choice-num{position:absolute;right:20px;top:18px;font:11px Arial;letter-spacing:.15em}
.choice-nav{display:flex;gap:5px}.choice-nav i{display:block;width:26px;height:2px;background:currentColor;opacity:.65}
.choice-copy{position:absolute;left:24px;bottom:24px;z-index:2;display:flex;flex-direction:column;max-width:72%}
.choice-copy small{font:9px Arial;letter-spacing:.18em;text-transform:uppercase;margin-bottom:9px}
.choice-copy strong{font:400 clamp(28px,4vw,58px)/.88 Georgia,serif;letter-spacing:-.04em}
.choice-copy em{font:10px Arial;font-style:normal;margin-top:10px;opacity:.75}
.choice-shape{position:absolute;border:1px solid currentColor;opacity:.38}
.choice-0 .choice-shape{width:42%;height:140%;right:-8%;top:-20%;transform:rotate(18deg)}
.choice-1 .choice-copy{left:50%;bottom:50%;transform:translate(-50%,50%);text-align:center;align-items:center}.choice-1 .choice-shape{width:45%;aspect-ratio:1;border-radius:50%;right:5%;bottom:-28%}
.choice-2 .choice-copy{top:24px;bottom:auto}.choice-2 .choice-shape{width:55%;height:1px;right:5%;bottom:25%;box-shadow:0 12px 0 currentColor,0 24px 0 currentColor}
.choice-3 .choice-copy{left:auto;right:24px;text-align:right;align-items:flex-end}.choice-3 .choice-shape{width:34%;height:60%;left:8%;top:22%;transform:skew(-12deg)}
.choice-4 .choice-copy{bottom:50%;transform:translateY(50%)}.choice-4 .choice-shape{width:52%;aspect-ratio:1;right:-10%;top:-12%;transform:rotate(45deg)}
.choice-5 .choice-copy{max-width:90%;bottom:20px}.choice-5 .choice-copy strong{font-family:Arial,sans-serif;font-weight:800;letter-spacing:-.06em}.choice-5 .choice-shape{inset:16px;border-width:2px}
.choice-info{display:flex;justify-content:space-between;gap:20px;padding:13px 2px;border-top:1px solid #aaa297}
.choice-info h3{font-size:16px;margin:0 0 5px}.choice-info p{font-size:11px;color:#6c655d;margin:0;text-transform:uppercase;letter-spacing:.06em}.choice-info a{font-size:11px;white-space:nowrap}
@media(max-width:720px){.design-intro,.choices{grid-template-columns:1fr}.design-library{padding:110px 22px 70px}.choice-preview{aspect-ratio:1.3}}

/* V4 small, quick shards */
#triangleStage .triangle-piece{
  width:calc((100% / 15) * .62) !important;
  height:calc((100% / 5) * .62) !important;
  margin-left:calc((100% / 15) * .19);
  margin-top:calc((100% / 5) * .19);
}
.assemble-section{min-height:106vh !important}

/* ===== V4: structurally different design previews ===== */
.v4-library{background:#e8e1d6;color:#111;padding:130px var(--pad,5vw) 100px}.v4-intro{max-width:1050px;margin-bottom:70px}.v4-intro h1{font:400 clamp(52px,8vw,104px)/.88 Georgia,serif;letter-spacing:-.055em;margin:8px 0 28px}.v4-intro>p:last-child{max-width:680px;line-height:1.7;color:#665f56}.site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 28px}.site-preview{height:390px;position:relative;overflow:hidden;padding:26px}.site-preview b{display:block}.site-meta{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #a9a094;padding-top:12px}.site-meta h3{margin:0 0 5px;font-size:17px}.site-meta p{margin:0;color:#6b645c;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.site-meta a{font-size:10px;white-space:nowrap}
.family-0{background:#171512;color:#f0e7da}.side-index{font:90px Georgia;opacity:.13;position:absolute;right:20px;top:5px}.hero-copy-mini{position:absolute;left:28px;bottom:28px;width:55%}.hero-copy-mini b{font:42px/0.9 Georgia;margin:8px 0}.hero-copy-mini span,.site-preview small{font:9px Arial;letter-spacing:.12em;text-transform:uppercase}.project-block{position:absolute;right:25px;bottom:28px;border:1px solid #a78758;padding:24px 15px;font:9px Arial}
.family-1{background:#18334d;color:#dce8ef;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:24px 24px}.techbar{font:9px monospace;border-bottom:1px solid;padding-bottom:8px}.grid-title{position:absolute;left:28px;bottom:28px}.grid-title b{font:38px Georgia;max-width:65%}.planbox{position:absolute;right:25px;top:80px;border:1px solid;padding:20px;font:22px/1.5 monospace}
.family-2{background:#e9e1ca;color:#314632}.orb{position:absolute;border-radius:50%;background:#8fa17d}.orb.a{width:280px;height:280px;right:-60px;top:-80px}.orb.b{width:130px;height:130px;left:-25px;bottom:-25px;background:#c5b47e}.center-copy{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.center-copy b{font:44px Georgia;max-width:75%}.center-copy span{font-size:10px;margin-top:12px}
.family-3{background:#090a0c;color:white}.stripe{position:absolute;right:-80px;top:-50px;width:220px;height:520px;background:#e8c934;transform:rotate(18deg)}.bolt{position:absolute;right:45px;top:35px;color:#111;font-size:60px}.bottom-copy{position:absolute;left:28px;bottom:28px}.bottom-copy b{font:800 42px/0.9 Arial;max-width:65%}.bottom-copy span{font-size:10px}
.family-4{background:#e8f3f4;color:#1e5866}.wave{position:absolute;width:520px;height:300px;border-radius:50%;background:#75bbca;right:-150px;bottom:-180px}.left-copy{position:absolute;left:28px;top:80px}.left-copy b{font:45px Georgia;max-width:58%}.bookcard{position:absolute;right:25px;bottom:25px;background:white;padding:22px;width:180px;font-size:11px;box-shadow:0 12px 30px #0002}.bookcard strong{display:block;margin-top:18px}
.family-5{background:#fafafa;color:#222}.clean-head{font:42px Georgia;max-width:55%;position:absolute;left:28px;top:40px}.checklist{position:absolute;right:30px;bottom:35px;line-height:2;font-size:11px}.clean-dot{width:130px;height:130px;border-radius:50%;background:#b7e2d9;position:absolute;left:30px;bottom:25px}
.family-6{background:#eee8de;color:#171717}.color-a,.color-b{position:absolute;top:0;bottom:0}.color-a{right:0;width:32%;background:#d9684c}.color-b{right:32%;width:15%;background:#e8ca55}.mag-copy{position:absolute;left:28px;bottom:28px;width:48%}.mag-copy b{font:46px/0.9 Georgia}.mag-copy span{font-size:10px}
.family-7{background:#0c0d0f;color:#eee}.dash-top{font:9px monospace;border-bottom:1px solid #444;padding-bottom:10px}.gauge{position:absolute;right:28px;top:70px;border:1px solid #a92f29;border-radius:50%;width:130px;height:130px;display:grid;place-items:center;font:42px monospace}.dash-copy{position:absolute;left:28px;bottom:28px}.dash-copy b{font:800 38px Arial}.dash-copy span{font-size:10px}
.family-8{background:linear-gradient(120deg,#050505,#39313d);color:white}.vnav{position:absolute;left:22px;top:25px;font:8px/2 Arial;letter-spacing:.18em}.cinema-copy{position:absolute;left:28px;bottom:30px}.cinema-copy b{font:48px/0.9 Georgia;max-width:65%}.shine{position:absolute;right:-60px;top:-60px;width:260px;height:520px;background:linear-gradient(90deg,transparent,#fff2,transparent);transform:rotate(25deg)}
.family-9{background:#dcd6cb;color:#151515;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.tile{padding:18px;background:#f2eee7}.tile.x{font:55px Georgia;background:#252525;color:white}.tile.y{font-size:11px;display:flex;align-items:end}.tile.z{grid-column:2;grid-row:1/3;display:flex;flex-direction:column;justify-content:end;background:#b89c70}.tile.z b{font:36px Georgia}
.t11 .family-0,.t21 .family-0{background:#ece6da;color:#171717}.t12 .family-1,.t22 .family-1{background-color:#f0dadd;color:#512f3a}.t13 .family-2,.t23 .family-2{background:#321e31;color:#ffe4ef}.t14 .family-3,.t24 .family-3{background:#d8dfd3;color:#344338}.t15 .family-4,.t25 .family-4{background:#111;color:#eee}.t16 .family-5,.t26 .family-5{background:#47281f;color:#f4e0bc}.t17 .family-6,.t27 .family-6{background:#f2c72e}.t18 .family-7,.t28 .family-7{background:#e7d7c4;color:#4d342d}.t19 .family-8,.t29 .family-8{background:#2d1c16}.t20 .family-9,.t30 .family-9{background:#f0ede7}
@media(max-width:760px){.site-grid{grid-template-columns:1fr}.v4-library{padding:110px 22px 70px}.site-preview{height:330px}.site-meta{align-items:flex-start}}

/* ===== V5 MICRO SHARDS: 900 tiny triangles covering the ENTIRE image ===== */
.assemble-section{min-height:104vh !important}
#triangleStage.triangle-stage{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100vh !important;
  overflow:hidden !important;
  contain:layout paint;
}
#triangleStage .triangle-piece{
  position:absolute !important;
  left:calc(var(--c) * (100% / 30)) !important;
  top:calc(var(--r) * (100% / 15)) !important;
  width:calc((100% / 30) + 1.5px) !important;
  height:calc((100% / 15) + 1.5px) !important;
  margin:0 !important;
  background-size:3000% 1500% !important;
  background-position:calc(var(--c) * (100% / 29)) calc(var(--r) * (100% / 14)) !important;
  background-repeat:no-repeat !important;
  transform:
    translate(calc(var(--sx) * (1 - var(--p,0))),calc(var(--sy) * (1 - var(--p,0))))
    rotate(calc(var(--sr) * (1 - var(--p,0))))
    scale(calc(.92 + (.08 * var(--p,0)))) !important;
  transform-origin:center;
  opacity:.88;
  will-change:transform,opacity;
}

/* ===== V6: 200 compact crystal/equilateral triangles ===== */
.assemble-section{min-height:105vh !important}
#triangleStage.triangle-stage{
  position:absolute !important; inset:0 !important;
  width:100% !important; height:100vh !important;
  overflow:hidden !important; contain:layout paint;
}
#triangleStage .crystal-triangle{
  --side:min(7.2vw,13vh);
  position:absolute !important;
  left:calc(var(--c) * (100% / 20) - 1.1vw) !important;
  top:calc(var(--r) * (100% / 10) - 1.5vh) !important;
  width:var(--side) !important;
  height:calc(var(--side) * .8660254) !important;
  margin:0 !important;
  background-size:2000% 1000% !important;
  background-position:calc(var(--c) * (100% / 19)) calc(var(--r) * (100% / 9)) !important;
  background-repeat:no-repeat !important;
  transform:
    translate(calc(var(--sx) * (1 - var(--p,0))),calc(var(--sy) * (1 - var(--p,0))))
    rotate(calc(var(--sr) * (1 - var(--p,0))))
    scale(calc(.9 + (.1 * var(--p,0)))) !important;
  transform-origin:center !important;
  filter:drop-shadow(0 0 1px rgba(255,255,255,.18));
  will-change:transform,opacity;
}

/* ===== V7 TRUE 200-PIECE FULL-IMAGE TRIANGLE MOSAIC ===== */
.assemble-section{min-height:105vh !important}
#triangleStage.triangle-stage{
 position:absolute !important;inset:0 !important;width:100% !important;height:100vh !important;
 overflow:hidden !important;contain:layout paint;background:#090909;
}
#triangleStage .mosaic-triangle{
 position:absolute !important;
 left:calc(var(--c) * 10%) !important;
 top:calc(var(--r) * 10%) !important;
 width:calc(10% + 1px) !important;
 height:calc(10% + 1px) !important;
 margin:0 !important;
 background-image:url("https://images.unsplash.com/photo-1737474707380-5ef35770d8a7?auto=format&crop=faces%2Cedges&fit=crop&h=1400&q=82&w=2200") !important;
 background-size:1000% 1000% !important;
 background-position:calc(var(--c) * (100% / 9)) calc(var(--r) * (100% / 9)) !important;
 background-repeat:no-repeat !important;
 transform:
   translate(calc(var(--sx) * (1 - var(--p,0))),calc(var(--sy) * (1 - var(--p,0))))
   rotate(calc(var(--sr) * (1 - var(--p,0))))
   scale(calc(.94 + (.06 * var(--p,0)))) !important;
 transform-origin:center !important;
 will-change:transform,opacity;
}

/* ===== V8 SIMPLE: complete image, 200 uncomplicated triangles ===== */
.assemble-section{min-height:105vh !important}
#triangleStage.triangle-stage{
 position:absolute !important;inset:0 !important;width:100% !important;height:100vh !important;
 overflow:hidden !important;background:#111 !important;
}
#triangleStage .simple-triangle{
 position:absolute;
 left:calc(var(--c) * 10%);
 top:calc(var(--r) * 10%);
 width:calc(10% + 1px);
 height:calc(10% + 1px);
 background-image:url("https://images.unsplash.com/photo-1497366811353-6870744d04b2?auto=format&fit=crop&w=2000&q=85");
 background-size:1000% 1000%;
 background-position:calc(var(--c) * 11.111111%) calc(var(--r) * 11.111111%);
 background-repeat:no-repeat;
 transform:translate(
   calc(var(--dx) * (1 - var(--p,0))),
   calc(var(--dy) * (1 - var(--p,0)))
 );
}

/* ===== V9 smooth-only animation fix ===== */
#triangleStage .simple-triangle{
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:
    translate3d(
      calc(var(--dx) * (1 - var(--p,0))),
      calc(var(--dy) * (1 - var(--p,0))),
      0
    ) !important;
}

/* ===== V10: pre-broken before arrival + smooth on-section assembly ===== */
#triangleStage .simple-triangle{
  transform:
    translate3d(
      calc(var(--dx) * 2.6 * (1 - var(--p,0))),
      calc(var(--dy) * 2.6 * (1 - var(--p,0))),
      0
    ) !important;
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

/* ===== V13: a little more shard travel, same smooth timing ===== */
#triangleStage .simple-triangle{
  transform:
    translate3d(
      calc(var(--dx) * 3.45 * (1 - var(--p,0))),
      calc(var(--dy) * 3.45 * (1 - var(--p,0))),
      0
    ) !important;
}

/* ===== Client Services Agreement ===== */
.agreement.standalone{padding:150px 0 80px;background:#0b0b0b;min-height:100vh}
.agreement-wrap{max-width:900px;margin:0 auto}
.agreement-card{margin:34px 0;padding:34px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.035)}
.agreement-card h3{margin:24px 0 8px;font-size:1.05rem;color:#d9b66f}
.agreement-card h3:first-child{margin-top:0}
.agreement-card p{margin:0;color:#d2d2d2;line-height:1.75}
.agreement-note{margin-top:22px;max-width:720px}
.agreement-accept{margin:28px 0;padding:24px;border:1px solid rgba(217,182,111,.45);background:transparent}
.agreement-accept a{color:#d9b66f;text-decoration:underline;text-underline-offset:3px}
.agreement-accept .checkline{display:flex;gap:12px;align-items:flex-start;margin:18px 0}
.agreement-accept .checkline input{width:18px;height:18px;min-width:18px;margin-top:2px}
.agreement-accept .checkline span{line-height:1.5}
@media(max-width:700px){.agreement.standalone{padding-top:120px}.agreement-card{padding:22px}.agreement-accept{padding:18px}}

/* ===== HOMEPAGE UNIQUE BACKGROUNDS — each image is unique and not used by templates ===== */
.hero.photo-section{background-image:url('https://images.unsplash.com/photo-1744711464151-71839971f650?auto=format&fit=crop&w=2200&q=85') !important;}
#services.photo-section{background-image:url('https://images.unsplash.com/photo-1774485223239-cde892851cf6?auto=format&fit=crop&w=2200&q=85') !important;}
#testimonials.photo-section{background-image:url('https://images.unsplash.com/photo-1764482138714-63038ac28d0f?auto=format&fit=crop&w=2200&q=85') !important;}
.final-cta.photo-section{background-image:url('https://images.unsplash.com/photo-1549993507-13724d53e424?auto=format&fit=crop&w=2200&q=85') !important;}
#contact.photo-section{background-image:url('https://images.unsplash.com/photo-1780362507540-af5f7f68d440?auto=format&fit=crop&w=2200&q=85') !important;}
#triangleStage .simple-triangle{background-image:url('https://images.unsplash.com/photo-1535991003124-bcaf8c097f10?auto=format&fit=crop&w=2200&q=85') !important;}

/* ===== Studio section layout fix: remove empty black scroll void ===== */
.assemble-section{
  height:auto !important;
  min-height:100vh !important;
  overflow:hidden !important;
  background:#090909;
}
#triangleStage.triangle-stage{
  position:absolute !important;
  inset:0 !important;
  top:0 !important;
  height:100% !important;
  min-height:100vh !important;
}
.assemble-section>.section-content{
  position:relative !important;
  inset:auto !important;
  min-height:100vh !important;
  height:auto !important;
  display:grid !important;
  align-items:center !important;
  padding-top:120px !important;
  padding-bottom:100px !important;
  pointer-events:auto !important;
}
.assemble-section>.section-content.split{grid-template-columns:1.12fr .88fr !important;}
.assemble-section>.section-content>div:first-child,
.assemble-section>.section-content .glass-copy{align-self:center !important;margin-top:0 !important;}
@media(max-width:900px){
  .assemble-section{min-height:auto !important;}
  .assemble-section>.section-content.split{grid-template-columns:1fr !important;gap:36px !important;}
  .assemble-section>.section-content .glass-copy{margin-top:0 !important;max-width:620px;}
}
@media(max-width:560px){
  .assemble-section{min-height:auto !important;}
  .assemble-section>.section-content{min-height:auto !important;padding-top:110px !important;padding-bottom:80px !important;}
  .assemble-section>.section-content .glass-copy{margin-top:0 !important;padding:20px;}
}
