@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Space+Grotesk:wght@400;500;600;700&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #aa66f8;outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
/* Portfolio — dark Cosmic-inspired frame, independent of the real Cosmic assets */
.portfolio{font-family:'DM Sans',Arial,sans-serif;color:#f9f6ff;background:#0a0813;overflow-x:hidden}.nebula{position:absolute;inset:0;max-height:2600px;pointer-events:none;background:radial-gradient(ellipse 50% 16% at 93% 8%,#9b5cf250,transparent 74%),radial-gradient(ellipse 55% 21% at -10% 35%,#57339d6f,transparent 80%),radial-gradient(ellipse 60% 25% at 70% 75%,#43277e70,transparent 70%)}.mp-header,.mp-hero,.gallery,.bottom-cta,.portfolio footer{position:relative;z-index:1}.mp-header{max-width:1450px;padding:0 45px;height:79px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff24}.mp-brand{font-family:Manrope,sans-serif;font-weight:800;font-size:18px;letter-spacing:-.5px;display:flex;align-items:center;gap:10px}.mp-logo{font-size:27px;color:#fff;background:linear-gradient(135deg,#4e44d6,#e75aac);width:35px;height:35px;border-radius:11px;display:grid;place-items:center;box-shadow:0 0 23px #ad4ae563}.submark{font-weight:500;color:#a89cba}.private-label{font-size:10px;letter-spacing:1.4px;color:#b5a1cf;border:1px solid #ad79dc54;border-radius:99px;padding:9px 13px}.header-action{font-size:12px;color:#eddaff;font-weight:700}.mp-hero{max-width:1450px;margin:auto;padding:125px 45px 120px}.upper-label{display:block;color:#c29fea;font-size:11px;font-weight:800;letter-spacing:2px}.mp-hero h1,.gallery-head h2,.bottom-cta h2{font-family:Manrope,sans-serif;letter-spacing:-3px;font-weight:800;line-height:1.12}.mp-hero h1{font-size:clamp(48px,6.4vw,89px);margin:25px 0}.mp-hero h1 em,.gallery-head h2 em,.bottom-cta h2 em{font-family:'Playfair Display',Georgia,serif;color:#d69cf2;font-weight:500;letter-spacing:-2px}.mp-hero>p{font-size:16px;line-height:1.9;color:#b2a9c4;max-width:580px}.primary-action{display:inline-flex;align-items:center;gap:30px;background:linear-gradient(115deg,#6645bd,#bb62d9);color:white;padding:15px 22px;border-radius:11px;font-weight:700;font-size:13px;min-height:50px;transition:transform .2s}.primary-action:hover{transform:translateY(-3px)}.mp-hero .primary-action{margin-top:27px}.count-note{display:inline-flex;margin-left:30px;gap:9px;color:#aba0bf;font-size:12px;align-items:center}.count-note strong{font-size:23px;color:#eee}.count-note span{color:#d693f3;font-size:19px}.gallery{max-width:1450px;padding:5px 45px 100px;margin:auto}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.gallery-head h2{font-size:clamp(32px,4vw,58px);margin:17px 0 0}.gallery-head>p{font-size:14px;line-height:1.7;color:#b5a9c7;max-width:320px}.control-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:36px}.pills{display:flex;gap:8px}.pills button,.category{border:1px solid #ffffff2b;background:#ffffff08;color:#bdb3cc;border-radius:100px;padding:11px 16px;font-size:12px;font-weight:700;white-space:nowrap}.pills button.active{background:#8e51d5;border-color:#b578f0;color:white}.search-label{height:45px;display:flex;align-items:center;max-width:295px;width:100%;background:#171323;border:1px solid #ffffff2c;border-radius:11px;padding:0 12px}.search-label input{width:100%;background:none;border:0;outline:0;color:white;font-size:12px}.search-label span:last-child{font-size:24px;color:#bba7d6}.category-row{display:flex;gap:8px;overflow:auto;scrollbar-width:none;padding:22px 0 31px}.category{padding:9px 13px;font-size:11px}.category.active{background:#ffffff25;color:white;border-color:#d0aeff80}.grid-title{font-size:21px;font-family:Manrope,sans-serif;margin:27px 0 22px;display:flex;align-items:center;gap:13px}.grid-title span{font-family:'DM Sans',sans-serif;color:#b891df;font-size:12px}.client-grid,.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.client-grid{margin-bottom:55px}.client-card,.site-card{min-width:0;border:1px solid #ffffff23;background:#17131f;border-radius:17px;overflow:hidden;transition:transform .2s,border-color .2s}.client-card:hover,.site-card:hover{transform:translateY(-5px);border-color:#c48bec8a}.client-monogram{height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;background:radial-gradient(circle at 50% 60%,#dbad8f4a,transparent 58%),linear-gradient(130deg,#263d39,#122523)}.client-monogram>span{font:500 76px 'Playfair Display',serif;color:#e9d6b0}.client-monogram small{letter-spacing:3px;color:#c7e0d7;font-size:9px}.mono-1{background:radial-gradient(circle,#b792654d,transparent 60%),linear-gradient(135deg,#302b29,#1b2429)}.mono-2{background:radial-gradient(circle,#efbaa955,transparent 58%),linear-gradient(135deg,#60434b,#34262f)}.client-info,.card-info{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:19px 21px 21px}.card-subtitle{font-size:11px;color:#bcb1c9;letter-spacing:.2px}.client-info h4,.card-info h4{font-family:Manrope,sans-serif;font-weight:800;font-size:18px;margin:8px 0 5px;letter-spacing:-.5px}.verify-label{font-size:10px;color:#8fa89f}.round-link{display:grid;place-items:center;border-radius:50%;min-width:39px;width:39px;height:39px;border:1px solid #ffffff40;font-size:18px}.round-link:hover{background:#8e55d9}.thumb-wrap{position:relative;height:265px;overflow:hidden;background:#ece6dd}.site-thumb{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden}.site-thumb iframe{width:1200px;height:835px;transform-origin:top left;transform:scale(.35);border:0;pointer-events:none;background:#fff}.badge-type{position:absolute;top:14px;left:14px;border-radius:6px;padding:8px 10px;background:#15121ade;color:#fff;font-size:9px;letter-spacing:1px;font-weight:800}.thumb-link{position:absolute;inset:0;display:flex;align-items:end;justify-content:center;padding:20px;background:linear-gradient(transparent 50%,#0009);color:white;font-size:13px;font-weight:800;opacity:0;transition:opacity .2s}.thumb-link:hover,.thumb-link:focus-visible{opacity:1}.site-card:hover .thumb-link{opacity:1}.card-info h4{font-size:17px}.no-results{padding:45px;border:1px dashed #ffffff40;border-radius:13px;color:#b9aaca;text-align:center}.bottom-cta{max-width:1340px;margin:20px auto 80px;padding:75px 60px;background:radial-gradient(circle at 85% 20%,#8149d764,transparent 40%),#1e162b;border:1px solid #ffffff29;border-radius:26px}.bottom-cta h2{font-size:clamp(40px,5vw,70px);margin:25px 0}.bottom-cta>p{max-width:550px;color:#bfb2cd;font-size:14px;line-height:1.8}.bottom-cta .primary-action{margin-top:15px}.portfolio footer{max-width:1450px;margin:auto;border-top:1px solid #ffffff24;padding:30px 45px 50px;color:#9389a6;display:flex;justify-content:space-between;gap:15px;font-size:11px}
/* Individually styled fictional sites */
.demo-site{font-family:var(--ui,'DM Sans',Arial,sans-serif);color:var(--ink);background:var(--paper);overflow-x:hidden;--image-shade:#0003;--serif:'Cormorant Garamond',Georgia,serif;--accent:#b77c40;--contrast:#fff;--paper:#f8f5ef;--ink:#26312b;--mute:#657065;--panel:#e9e6dc;--button:#26312b;--button-text:#fff}
.theme-restaurant{--serif:'Cormorant Garamond',Georgia,serif;--paper:#f7f1e6;--panel:#e9ddc9;--ink:#2e3327;--mute:#6e7562;--accent:#b17b43;--button:#2c382d}
.theme-craft{--serif:'Playfair Display',Georgia,serif;--paper:#e9e8df;--panel:#d7d6ca;--ink:#222e2a;--mute:#6d746d;--accent:#8e6542;--button:#22312b}
.theme-spa{--serif:'Cormorant Garamond',Georgia,serif;--paper:#f9ebe6;--panel:#ecd8d2;--ink:#644c4b;--mute:#927c79;--accent:#c08d88;--button:#835c65}
.theme-hotel{--serif:'Cormorant Garamond',Georgia,serif;--paper:#e7ede5;--panel:#d7dfd5;--ink:#1b403d;--mute:#617d77;--accent:#9aa990;--button:#1f4944}
.theme-law{--serif:'Playfair Display',Georgia,serif;--paper:#f0ede8;--panel:#d9d5cd;--ink:#1f2937;--mute:#797e82;--accent:#a47b52;--button:#222f3d}
.theme-shop{--serif:'Space Grotesk',Arial,sans-serif;--paper:#ffe8c7;--panel:#f6c891;--ink:#462c30;--mute:#7b585b;--accent:#df5a4c;--button:#e8574c}
.theme-association{--serif:'Space Grotesk',Arial,sans-serif;--paper:#f7f6e7;--panel:#e6efdb;--ink:#164239;--mute:#51796c;--accent:#f1aa3e;--button:#154e43}
.theme-city{--serif:'Playfair Display',Georgia,serif;--paper:#faf9f4;--panel:#e7eef0;--ink:#193a52;--mute:#637986;--accent:#ad915e;--button:#1f4c6c}
.theme-farm{--serif:'Cormorant Garamond',Georgia,serif;--paper:#f5edda;--panel:#e8dab8;--ink:#3d4e2c;--mute:#707b5d;--accent:#a07137;--button:#4d6234}
.theme-health{--serif:'DM Sans',Arial,sans-serif;--paper:#f1f9f7;--panel:#deeeea;--ink:#174d52;--mute:#597a79;--accent:#6cb6aa;--button:#226f71}
.theme-festival{--serif:'Space Grotesk',Arial,sans-serif;--paper:#1d1337;--panel:#2d1c51;--ink:#fff6e3;--mute:#b5a7d4;--accent:#fd8255;--button:#fe7b50;--button-text:#281136;--image-shade:#2d1c5155}
.theme-sport{--serif:'Space Grotesk',Arial,sans-serif;--paper:#1b2323;--panel:#283937;--ink:#e8f4eb;--mute:#adc5ba;--accent:#c7f277;--button:#c7f277;--button-text:#142621;--image-shade:#05251a3d}
.demo-notice{height:29px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:#151423;color:#e7cafd;font:700 10px 'DM Sans',sans-serif;letter-spacing:1.2px;position:relative;z-index:5}.demo-notice a{font-size:10px;color:#fff;letter-spacing:0}.demo-header{height:89px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid color-mix(in srgb,var(--ink) 15%,transparent);position:relative;z-index:4;background:var(--paper)}.demo-brand{font-family:var(--serif);font-weight:700;font-size:28px;letter-spacing:-1.5px}.theme-festival .demo-brand,.theme-shop .demo-brand,.theme-sport .demo-brand,.theme-health .demo-brand{letter-spacing:-1px}.demo-header nav{display:flex;gap:35px;align-items:center}.demo-header nav a{font-size:12px;font-weight:700;opacity:.75}.demo-header-cta{font-size:12px;font-weight:800;border-bottom:1px solid var(--accent);padding:9px 0}.demo-header-cta span{margin-left:11px}.mobile-menu{display:none;border:0;background:none;color:var(--ink);font-size:22px}.demo-first{display:grid;grid-template-columns:50% 50%;min-height:615px;position:relative}.demo-hero-copy{padding:105px 9% 70px 12%;display:flex;align-items:flex-start;justify-content:center;flex-direction:column;z-index:2}.demo-kicker,.section-index{color:var(--accent);font-size:11px;letter-spacing:2.1px;font-weight:800}.demo-hero-copy h1{font-family:var(--serif);font-size:clamp(55px,5.2vw,90px);line-height:1.02;font-weight:500;letter-spacing:-2.5px;margin:24px 0}.demo-hero-copy>p{font-size:15px;line-height:1.85;max-width:410px;color:var(--mute)}.demo-button{margin-top:26px;display:inline-flex;align-items:center;gap:27px;padding:16px 22px;border:0;background:var(--button);color:var(--button-text);border-radius:2px;font-size:12px;font-weight:800;min-height:52px}.demo-button:hover{filter:brightness(1.16)}.hero-small{font-size:8px;letter-spacing:1.3px;color:var(--mute);margin-top:45px}.photo{background-size:cover;background-position:center;min-height:250px;background-color:var(--panel)}.hero-photo{height:100%;min-height:615px}.hero-decor{position:absolute;left:45%;bottom:32px;font-family:var(--serif);font-size:12px;letter-spacing:7px;color:#ffffffca;z-index:2;transform:rotate(-90deg);transform-origin:bottom left}.theme-festival .demo-first,.theme-sport .demo-first{grid-template-columns:57% 43%}.theme-festival .demo-hero-copy h1,.theme-sport .demo-hero-copy h1{font-family:'Space Grotesk',sans-serif;font-weight:700;text-transform:uppercase;line-height:.99}.theme-shop .demo-hero-copy h1{font-weight:700}.theme-city .demo-first{grid-template-columns:60% 40%}.theme-city .demo-hero-copy h1{font-size:clamp(52px,5vw,80px)}.theme-restaurant .demo-first,.theme-hotel .demo-first{grid-template-columns:48% 52%}.theme-spa .hero-photo,.theme-hotel .hero-photo{border-radius:220px 0 0 0}.theme-craft .hero-photo{border-radius:0 0 0 150px}.theme-restaurant .hero-photo{border-radius:0 0 0 170px}.theme-association .demo-button,.theme-health .demo-button{border-radius:100px}.theme-shop .demo-button,.theme-sport .demo-button{border-radius:100px}.theme-shop .demo-first{grid-template-columns:48% 52%}.theme-shop .demo-hero-copy{padding-top:70px}.theme-festival .demo-header{background:#231540}.theme-festival .demo-first{background:radial-gradient(circle at 30% 20%,#512588,transparent 45%),var(--paper)}.theme-sport .demo-first{background:linear-gradient(120deg,#1b2323,#1e3633)}
.demo-intro{padding:100px 7% 115px;background:var(--paper)}.demo-intro-overline{display:flex;justify-content:space-between;border-top:1px solid var(--accent);padding-top:20px;color:var(--mute);font-size:10px;letter-spacing:1.5px;font-weight:800}.intro-body{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end;margin-top:55px}.intro-body h2,.split-copy h2,.service-heading h2,.demo-end h2{font-family:var(--serif);font-weight:500;font-size:clamp(53px,6.1vw,98px);letter-spacing:-2px;line-height:1.02;margin:0}.intro-body h2 em,.split-copy h2 em,.service-heading h2 em,.demo-end h2 em{color:var(--accent);font-weight:500}.intro-body p,.split-copy p,.service-heading p,.demo-end p{font-size:15px;line-height:1.9;color:var(--mute);max-width:490px}.text-link{display:inline-block;margin-top:15px;font-size:12px;font-weight:800;border-bottom:1px solid var(--accent);padding-bottom:9px}.split-section{display:grid;grid-template-columns:1fr 1fr;background:var(--panel);min-height:600px}.split-media{position:relative;min-height:600px}.split-photo{position:absolute;inset:0}.media-caption{position:absolute;bottom:25px;left:35px;color:#fff;font-size:11px;font-weight:800;letter-spacing:2px;text-shadow:0 2px 5px #000}.split-copy{padding:95px 12%;display:flex;flex-direction:column;justify-content:center}.split-copy h2{font-size:clamp(46px,5.1vw,82px);margin-top:35px}.mini-bullets{margin-top:25px}.mini-bullets div{display:flex;gap:30px;align-items:center;padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 20%,transparent)}.mini-bullets span{font-size:11px;color:var(--accent)}.mini-bullets strong{font-weight:600;font-size:15px}.service-section{padding:125px 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%}.service-heading h2{font-size:clamp(48px,5.4vw,88px);margin:31px 0}.service-list{align-self:center}.service-item{display:grid;grid-template-columns:45px 1fr 30px;align-items:center;gap:10px;border-bottom:1px solid color-mix(in srgb,var(--ink) 28%,transparent);padding:23px 0}.service-item:first-child{border-top:1px solid color-mix(in srgb,var(--ink) 28%,transparent)}.service-item span{color:var(--accent);font-size:15px}.service-item span:last-child{text-align:right;font-size:22px}.service-item h3{font:500 clamp(21px,2vw,30px) var(--serif);margin:0}.demo-end{background:var(--panel);padding:110px 7% 0;text-align:center}.demo-end h2{font-size:clamp(55px,6.3vw,100px);margin:25px 0}.demo-end p{margin:0 auto}.demo-end .demo-button{margin-top:28px}.end-footer{margin-top:110px;padding:27px 0;border-top:1px solid color-mix(in srgb,var(--ink) 20%,transparent);display:flex;align-items:center;justify-content:space-between;gap:25px}.end-footer strong{font-family:var(--serif);font-size:25px}.end-footer span{font-size:10px;letter-spacing:1.3px;color:var(--mute)}
/* Miniatures use the same authentic page rendering as the full-size demo. */
.demo-site.mini{width:1200px;overflow:hidden}.mini .demo-notice{height:25px}.mini .demo-header{height:80px}.mini .demo-first{min-height:615px}.mini .hero-photo{min-height:615px}.mini .demo-hero-copy h1{font-size:75px}.mini .demo-hero-copy>p{font-size:16px}
@media(max-width:1120px){.client-grid,.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-thumb iframe{transform:scale(.42)}.gallery-head>p{max-width:260px}.demo-header nav{gap:17px}.demo-header nav a{font-size:11px}.demo-hero-copy{padding-left:8%}.demo-hero-copy h1{font-size:clamp(47px,6vw,75px)}}
@media(max-width:730px){.mp-header{height:70px;padding:0 20px}.private-label{display:none}.mp-hero{padding:80px 20px}.mp-hero h1{font-size:clamp(41px,10vw,70px);letter-spacing:-2px}.mp-hero h1 em{letter-spacing:-1px}.mp-hero>p{font-size:14px}.count-note{display:flex;margin:22px 0 0}.gallery{padding:10px 18px 65px}.gallery-head{display:block}.gallery-head h2{letter-spacing:-1px}.gallery-head>p{max-width:520px}.control-row{display:block}.pills{overflow:auto;scrollbar-width:none}.pills button{flex-shrink:0}.search-label{margin-top:14px;max-width:none}.category-row{padding-top:17px}.client-grid,.showcase-grid{grid-template-columns:1fr}.site-thumb iframe{transform:scale(.29)}.thumb-wrap{height:270px}.bottom-cta{margin:10px 18px 55px;padding:50px 25px}.bottom-cta h2{letter-spacing:-1px}.portfolio footer{padding:22px 18px;display:block}.portfolio footer span{display:block;margin:9px 0}.demo-header{height:74px;padding:0 5%}.demo-brand{font-size:22px}.demo-header nav{display:none;position:absolute;top:74px;left:0;right:0;padding:22px;background:var(--paper);border-bottom:1px solid var(--mute);flex-direction:column;align-items:flex-start}.menu-open .demo-header nav{display:flex}.demo-header-cta{margin-left:auto;font-size:10px}.mobile-menu{display:block}.demo-first,.theme-festival .demo-first,.theme-sport .demo-first,.theme-city .demo-first,.theme-restaurant .demo-first,.theme-hotel .demo-first,.theme-shop .demo-first{display:flex;flex-direction:column}.demo-hero-copy{padding:60px 7% 45px}.demo-hero-copy h1,.theme-city .demo-hero-copy h1{font-size:clamp(50px,11vw,83px)}.hero-small{margin-top:25px}.hero-photo{min-height:380px;height:380px}.hero-decor{display:none}.demo-intro{padding:70px 7%}.intro-body{display:block;margin-top:35px}.intro-body h2{font-size:56px}.split-section{grid-template-columns:1fr}.split-media{height:350px;min-height:0}.split-copy{padding:65px 7%}.service-section{padding:75px 7%;grid-template-columns:1fr;gap:30px}.service-heading h2{font-size:57px}.demo-end{padding:75px 7% 0}.demo-end h2{font-size:55px}.end-footer{margin-top:70px}.end-footer span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* V3: horizontal portfolio rails and genuine client previews. */
.rail-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin:40px 0 20px}
.rail-heading .grid-title{margin:8px 0 0}
.eyebrow-row{font-size:10px;font-weight:800;letter-spacing:2px;color:#b18ade}
.rail-controls{display:flex;align-items:center;gap:9px;flex-shrink:0}
.rail-progress{font-size:11px;letter-spacing:1.8px;color:#a99aba;white-space:nowrap;margin-right:10px}
.rail-arrow{display:grid;place-items:center;width:49px;height:49px;color:#fff;background:#352442;border:1px solid #c295ec78;border-radius:50%;font-size:22px;transition:background .2s,transform .2s}
.rail-arrow:hover:not(:disabled){background:#9254d8;transform:translateY(-2px)}
.rail-arrow:disabled{opacity:.3;cursor:default}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,39%);grid-template-columns:none;gap:24px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-padding-left:2px;overscroll-behavior-inline:contain;padding:4px 2px 17px}
.rail::-webkit-scrollbar{display:none}
.rail > article{scroll-snap-align:start;min-width:0}
.client-grid.rail{margin-bottom:58px}
.client-preview{height:265px}
.client-preview .client-monogram{position:absolute;inset:0;height:100%}
.client-preview .site-thumb{z-index:1;background:transparent}
.client-preview .site-thumb iframe{background:transparent}
.client-preview .badge-type,.client-preview .thumb-link{z-index:2}
.badge-real{background:#134b40e8;color:#d5fff0}
.rail .thumb-link{opacity:0;transition:opacity .2s}
.rail .site-card:hover .thumb-link,.rail .client-card:hover .thumb-link,.rail .thumb-link:focus-visible{opacity:1}
.client-card .verify-label{font-size:10px;color:#aba5b1}

/* Art direction: variations in composition, not simply different palettes. */
.theme-restaurant .demo-first{display:block;min-height:710px;background:#2a2d22;color:white}
.theme-restaurant .demo-first .hero-photo{position:absolute;inset:0;min-height:0;height:100%;border-radius:0;background-position:center 59%;filter:brightness(.65)}
.theme-restaurant .demo-hero-copy{position:relative;min-height:710px;width:min(760px,75%);padding:112px 0 80px 9%;color:white}
.theme-restaurant .demo-first h1{font-family:'Cormorant Garamond',serif;font-size:clamp(80px,8.4vw,135px);line-height:.9;font-weight:500;text-shadow:0 2px 30px #0005}
.theme-restaurant .demo-first p,.theme-restaurant .demo-first .demo-kicker,.theme-restaurant .hero-small{color:#fff;opacity:.95}
.theme-restaurant .demo-first .demo-button{background:#d6a56b;color:#28291e}
.theme-restaurant .hero-decor{display:none}
.theme-restaurant .demo-intro{background:#f0e9da}

.theme-craft .demo-first{grid-template-columns:48% 52%;min-height:660px;background:#e2dfd4}
.theme-craft .demo-hero-copy{padding:98px 8% 72px 11%}
.theme-craft .demo-first h1{font-size:clamp(76px,7.1vw,115px);letter-spacing:-5px}
.theme-craft .hero-photo{margin:25px 25px 25px 0;min-height:610px;height:calc(100% - 50px);border-radius:0}
.theme-craft .hero-decor{left:94%;bottom:65px;color:#e3e2d7}
.theme-craft .demo-intro{background:#e8e2d4}

.theme-spa .demo-first{display:flex;min-height:670px;align-items:center;justify-content:center;text-align:center;background:#f2dfdb}
.theme-spa .demo-hero-copy{min-height:670px;width:54%;padding:60px 6%;align-items:center;z-index:2}
.theme-spa .demo-first h1{font-size:clamp(83px,8vw,126px);font-style:italic;line-height:.87;color:#6e4b4f}
.theme-spa .demo-first p{max-width:340px}
.theme-spa .hero-photo{position:absolute;top:48px;right:4%;height:555px;width:27%;min-height:0;border-radius:250px 250px 0 0;background-position:50% 37%;opacity:.92}
.theme-spa .demo-first:before{content:'';position:absolute;top:110px;left:3%;width:25%;height:420px;border:1px solid #b98584;border-radius:250px 250px 0 0;transform:rotate(-13deg);pointer-events:none}
.theme-spa .hero-decor{display:none}

.theme-hotel .demo-first{display:block;min-height:740px;color:white;background:#254a43}
.theme-hotel .demo-first .hero-photo{position:absolute;inset:0;min-height:0;height:100%;border-radius:0;filter:brightness(.64);background-position:center 57%}
.theme-hotel .demo-hero-copy{width:68%;padding:125px 8%;min-height:740px;position:relative;color:white}
.theme-hotel .demo-first h1{font-size:clamp(95px,9.4vw,145px);line-height:.92;text-shadow:0 4px 35px #0008}
.theme-hotel .demo-first p,.theme-hotel .demo-first .demo-kicker,.theme-hotel .hero-small{color:white}
.theme-hotel .demo-first .demo-button{background:#f4e8d1;color:#174b42}
.theme-hotel .hero-decor{display:none}

.theme-law .demo-first{background:#e5e3df;min-height:700px;grid-template-columns:59% 41%}
.theme-law .demo-hero-copy{padding:100px 8%}
.theme-law .demo-first h1{font-size:clamp(78px,6.9vw,116px);font-family:'Playfair Display',Georgia,serif;line-height:1;letter-spacing:-5px}
.theme-law .hero-photo{margin:82px 7% 82px 0;height:535px;min-height:0;box-shadow:30px 30px 0 #c7bcae}
.theme-law .hero-decor{display:none}

.theme-shop .demo-first{background:#fbd3a7;grid-template-columns:50% 50%;min-height:675px}
.theme-shop .demo-hero-copy{padding:85px 9%;position:relative}
.theme-shop .demo-first h1{font-size:clamp(80px,7.5vw,123px);letter-spacing:-8px;line-height:.89;text-transform:uppercase;color:#632f42}
.theme-shop .hero-photo{min-height:675px;border-radius:0;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 20%)}
.theme-shop .demo-first:after{content:'NOUVEAU';position:absolute;top:80px;right:27px;font-size:13px;letter-spacing:4px;font-weight:800;background:#ef5d5a;color:#fff;border-radius:50%;width:115px;height:115px;display:grid;place-items:center;transform:rotate(16deg)}
.theme-shop .hero-decor{display:none}

.theme-association .demo-first{background:#f7f7e5;min-height:690px;grid-template-columns:52% 48%}
.theme-association .demo-hero-copy h1{font-size:clamp(76px,6.8vw,112px);font-family:'Space Grotesk',sans-serif;font-weight:700;line-height:.93;letter-spacing:-6px}
.theme-association .demo-first .hero-photo{min-height:645px;margin:22px 24px 22px 0;border-radius:160px 15px 160px 15px}
.theme-association .demo-first:after{content:'ENSEMBLE';position:absolute;bottom:50px;right:45px;padding:15px 25px;background:#edaa45;color:#164239;font-size:14px;font-weight:800;letter-spacing:3px;transform:rotate(-10deg)}
.theme-association .hero-decor{display:none}

.theme-city .demo-first{background:#edf3f4;min-height:660px;grid-template-columns:57% 43%}
.theme-city .demo-hero-copy{padding:100px 12%}
.theme-city .demo-first h1{font-family:'Playfair Display',serif;font-size:clamp(65px,6vw,96px)}
.theme-city .hero-photo{margin:55px 33px 55px 0;min-height:0;height:550px;box-shadow:13px 13px 0 #bad1db}
.theme-city .hero-decor{display:none}
.theme-city .demo-first:before{content:'BELLECOMBE';position:absolute;top:32px;right:50px;font-size:10px;letter-spacing:6px;color:#47788c;font-weight:800}

.theme-farm .demo-first{min-height:680px;grid-template-columns:53% 47%;background:#f3ead4}
.theme-farm .demo-hero-copy{padding:75px 11%}
.theme-farm .demo-first h1{font-family:'Cormorant Garamond',serif;font-size:clamp(93px,9vw,142px);line-height:.85;color:#4c5e2e}
.theme-farm .hero-photo{height:100%;min-height:680px;clip-path:ellipse(87% 84% at 91% 46%)}
.theme-farm .hero-decor{display:none}

.theme-health .demo-first{background:#e8f5f2;min-height:645px;grid-template-columns:52% 48%}
.theme-health .demo-hero-copy{padding:85px 11%}
.theme-health .demo-first h1{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(61px,5.8vw,97px);letter-spacing:-5px}
.theme-health .hero-photo{margin:28px 28px 28px 0;min-height:589px;height:calc(100% - 56px);border-radius:200px 200px 15px 15px}
.theme-health .hero-decor{display:none}

.theme-festival .demo-first{display:block;min-height:700px;background:#32165d;color:#fff}
.theme-festival .hero-photo{position:absolute;inset:0;height:100%;min-height:0;filter:brightness(.55) saturate(1.35)}
.theme-festival .demo-hero-copy{position:relative;width:86%;min-height:700px;padding:88px 7%;color:white}
.theme-festival .demo-first h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(107px,12vw,180px);line-height:.78;font-weight:700;text-transform:uppercase;letter-spacing:-12px;color:#ffe369;text-shadow:8px 9px 0 #f06d8f}
.theme-festival .demo-first .demo-kicker,.theme-festival .demo-first p,.theme-festival .hero-small{color:#fff}
.theme-festival .hero-decor{display:none}

.theme-sport .demo-first{display:block;min-height:710px;background:#1c2a29;color:#fff}
.theme-sport .hero-photo{position:absolute;inset:0;height:100%;min-height:0;filter:brightness(.48)}
.theme-sport .demo-hero-copy{position:relative;width:83%;min-height:710px;padding:95px 7%;color:white}
.theme-sport .demo-first h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(95px,10vw,155px);font-weight:700;text-transform:uppercase;line-height:.85;letter-spacing:-9px}
.theme-sport .demo-first h1::after{content:'↗';font-size:.65em;color:#c7f277;margin-left:12px}
.theme-sport .demo-first .demo-kicker,.theme-sport .demo-first p,.theme-sport .hero-small{color:#fff}
.theme-sport .hero-decor{display:none}

@media(max-width:1120px){.rail{grid-auto-columns:minmax(0,47%)}.rail .site-thumb iframe{transform:scale(.4)}}
@media(max-width:730px){.rail-heading{align-items:center;gap:8px}.rail-heading .grid-title{font-size:17px}.eyebrow-row{font-size:8px}.rail-controls{gap:5px}.rail-progress{margin-right:4px;font-size:9px}.rail-arrow{width:39px;height:39px;font-size:18px}.rail{grid-auto-columns:minmax(0,86%);gap:14px}.rail .site-thumb iframe{transform:scale(.29)}.rail .thumb-link{opacity:1;background:linear-gradient(transparent 75%,#0008)}.client-preview .site-thumb iframe{transform:scale(.29)}
 .theme-restaurant .demo-first,.theme-hotel .demo-first,.theme-festival .demo-first,.theme-sport .demo-first{min-height:660px}.theme-restaurant .demo-hero-copy,.theme-hotel .demo-hero-copy,.theme-festival .demo-hero-copy,.theme-sport .demo-hero-copy{width:100%;padding:80px 8%;min-height:660px}.theme-restaurant .demo-first h1,.theme-hotel .demo-first h1,.theme-festival .demo-first h1,.theme-sport .demo-first h1{font-size:clamp(63px,13vw,108px);letter-spacing:-4px;line-height:.96}
 .theme-craft .demo-first,.theme-shop .demo-first,.theme-association .demo-first,.theme-city .demo-first,.theme-farm .demo-first,.theme-health .demo-first,.theme-law .demo-first{display:flex;flex-direction:column}.theme-craft .demo-hero-copy,.theme-law .demo-hero-copy,.theme-shop .demo-hero-copy,.theme-association .demo-hero-copy,.theme-city .demo-hero-copy,.theme-farm .demo-hero-copy,.theme-health .demo-hero-copy{padding:65px 8% 45px}.theme-craft .demo-first h1,.theme-law .demo-first h1,.theme-shop .demo-first h1,.theme-association .demo-first h1,.theme-city .demo-first h1,.theme-farm .demo-first h1,.theme-health .demo-first h1{font-size:clamp(61px,12vw,98px);letter-spacing:-3px;line-height:1}.theme-craft .hero-photo,.theme-law .hero-photo,.theme-shop .hero-photo,.theme-association .hero-photo,.theme-city .hero-photo,.theme-farm .hero-photo,.theme-health .hero-photo{margin:0;clip-path:none;min-height:350px;height:350px;border-radius:0;box-shadow:none}.theme-spa .demo-first{min-height:750px;display:flex;flex-direction:column}.theme-spa .demo-hero-copy{width:100%;min-height:440px;padding:65px 8%}.theme-spa .demo-first h1{font-size:clamp(68px,12vw,108px)}.theme-spa .hero-photo{position:relative;top:auto;right:auto;width:75%;height:300px;min-height:0;border-radius:150px 150px 0 0;margin:auto}.theme-spa .demo-first:before{display:none}.theme-shop .demo-first:after,.theme-association .demo-first:after{display:none}}

/* V4: robust FLEX rails. Never let CSS grid squeeze concepts into tiny strips. */
.gallery{overflow:hidden}
.gallery .rail{display:flex!important;flex-flow:row nowrap!important;grid-template-columns:unset!important;grid-auto-columns:unset!important;grid-auto-flow:unset!important;align-items:stretch;gap:30px!important;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding:10px 4px 24px;touch-action:pan-x pan-y}
.gallery .rail > article{display:block;flex:0 0 68%!important;width:68%;max-width:none;scroll-snap-align:start;scroll-snap-stop:always;transform:none;border-radius:22px;background:#1b1528;box-shadow:0 22px 58px #0004}
.gallery .client-grid.rail > article{flex-basis:53%!important;width:53%}
.gallery .rail > article:hover{transform:none;border-color:#dcb3ffb0;box-shadow:0 25px 65px #3c174e8c}
.gallery .rail .thumb-wrap{height:530px;overflow:hidden}
.gallery .client-grid .thumb-wrap{height:390px}
.gallery .rail .site-thumb iframe{width:1200px;height:850px;transform:scale(.75);transform-origin:top left}
.gallery .client-grid .site-thumb iframe{transform:scale(.59)}
.gallery .rail .card-info,.gallery .rail .client-info{padding:27px 32px 30px;min-height:118px}
.gallery .rail .card-info h4,.gallery .rail .client-info h4{font-size:clamp(23px,2.3vw,33px);margin:10px 0 4px}
.gallery .rail .card-subtitle{text-transform:uppercase;letter-spacing:1.2px;font-weight:700;font-size:11px;color:#b6a2c8}
.gallery .rail .card-slogan{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:16px;color:#e5c9ff;margin:7px 0 0}
.gallery .rail .meta-divider{color:#ca83ef;margin:0 8px}
.gallery .rail .round-link{width:56px;height:56px;min-width:56px;font-size:25px;background:#65418b;border-color:#a47bca}
.gallery .rail .round-link:hover{background:#a054d7}
.gallery .rail .badge-type{padding:10px 13px;top:22px;left:22px;font-size:11px;border:1px solid #ffffffb0;background:#201725df;backdrop-filter:blur(8px)}
.gallery .rail .badge-real{background:#11614ecf;color:white}
.gallery .rail .thumb-link{font-weight:800;font-size:17px;justify-content:flex-end;align-items:flex-end;padding:32px;background:linear-gradient(transparent 57%,#150922a8);opacity:0}
.gallery .rail .site-card:hover .thumb-link,.gallery .rail .client-card:hover .thumb-link,.gallery .rail .thumb-link:focus-visible{opacity:1}
.gallery .rail .thumb-link span{background:#fff;color:#2d173f;border-radius:60px;padding:17px 23px;box-shadow:0 10px 30px #0005}
.gallery .rail .thumb-link b{font-size:22px;margin-left:18px}
.concept-number{position:absolute;z-index:2;top:17px;right:22px;font-family:'Playfair Display',serif;font-size:48px;font-style:italic;color:#fff;text-shadow:0 2px 18px #000b}
.rail-heading{margin:60px 0 22px}
.rail-heading .grid-title{font-size:clamp(25px,2.6vw,36px);letter-spacing:-.7px}
.rail-controls{gap:11px}
.rail-arrow{width:56px;height:56px;font-size:26px;border-width:1.5px}
.rail-progress{font-size:13px;margin-right:16px}
.client-grid.rail{margin-bottom:78px}
.gallery .rail .client-card .verify-label{display:block;margin-top:8px;color:#8fbdab}
.gallery .rail > article.is-focused{border-color:#d8b2fd81}

/* Editorial polish: contrast, visual rhythm, and lively detail on the fictional sites. */
.demo-site .demo-kicker{display:inline-flex;align-items:center;gap:12px}
.demo-site .demo-kicker:before{content:'';display:inline-block;width:26px;height:2px;background:currentColor}
.demo-site .demo-button{transition:transform .25s,box-shadow .25s;box-shadow:0 12px 25px #0002}
.demo-site .demo-button:hover{transform:translateY(-4px);box-shadow:0 16px 32px #0003}
.demo-site .demo-first .hero-photo{background-blend-mode:normal;transition:filter .4s}
.demo-site .service-item{transition:padding .25s,background .25s}
.demo-site .service-item:hover{padding-left:13px;background:color-mix(in srgb,var(--accent) 10%,transparent)}
.theme-restaurant .demo-hero-copy h1,.theme-hotel .demo-hero-copy h1{letter-spacing:-6px}
.theme-festival .demo-first h1{color:#ffdd4c;text-shadow:8px 11px 0 #de428e,15px 15px 50px #070111}
.theme-shop .demo-first h1{color:#e7504b;text-shadow:3px 3px 0 #ffefd7}
.theme-sport .demo-first h1{color:#e6ffba;text-shadow:0 0 45px #b4f44d66}

@media(max-width:1250px){.gallery .rail > article{flex-basis:76%!important;width:76%}.gallery .client-grid.rail > article{flex-basis:59%!important;width:59%}.gallery .rail .site-thumb iframe{transform:scale(.65)}.gallery .client-grid .site-thumb iframe{transform:scale(.52)}.gallery .rail .thumb-wrap{height:460px}.gallery .client-grid .thumb-wrap{height:355px}}
@media(max-width:850px){.gallery .rail > article{flex-basis:85%!important;width:85%}.gallery .client-grid.rail > article{flex-basis:75%!important;width:75%}.gallery .rail .site-thumb iframe{transform:scale(.5)}.gallery .client-grid .site-thumb iframe{transform:scale(.45)}.gallery .rail .thumb-wrap{height:340px}.gallery .client-grid .thumb-wrap{height:310px}.gallery .rail .card-info,.gallery .rail .client-info{padding:22px}.gallery .rail .card-info h4{font-size:24px}}
@media(max-width:550px){.gallery .rail{gap:16px!important}.gallery .rail > article,.gallery .client-grid.rail > article{flex-basis:90%!important;width:90%}.gallery .rail .thumb-wrap,.gallery .client-grid .thumb-wrap{height:230px}.gallery .rail .site-thumb iframe,.gallery .client-grid .site-thumb iframe{transform:scale(.265)}.gallery .rail .card-info,.gallery .rail .client-info{padding:15px 17px 20px;min-height:104px}.gallery .rail .card-info h4,.gallery .rail .client-info h4{font-size:20px}.gallery .rail .card-subtitle{font-size:9px;letter-spacing:.6px}.gallery .rail .card-slogan{font-size:13px}.gallery .rail .round-link{width:42px;height:42px;min-width:42px;font-size:20px}.gallery .rail .badge-type{padding:7px 10px;top:11px;left:11px;font-size:9px}.gallery .rail .thumb-link{opacity:1;padding:12px;font-size:12px}.gallery .rail .thumb-link span{padding:11px 14px}.gallery .rail .thumb-link b{font-size:17px;margin-left:7px}.concept-number{top:9px;right:13px;font-size:34px}.rail-heading .grid-title{font-size:22px}.rail-arrow{width:38px;height:38px;font-size:19px}.rail-progress{font-size:10px;margin-right:2px}.rail-heading{margin-top:43px}.client-grid.rail{margin-bottom:38px}}

/* V5 — a restrained, taDAA-inspired three-card rhythm, with real breathing room. */
.gallery{max-width:1320px;overflow:visible}
.rail-stage{position:relative;isolation:isolate;margin:0 0 55px}
.rail-stage[hidden]{display:none!important}
.gallery .rail{gap:20px!important;padding:2px 1px 13px;margin:0;scrollbar-width:none;overflow-x:auto;overflow-y:hidden}
.gallery .rail > article,.gallery .client-grid.rail > article{flex:0 0 33.5%!important;width:33.5%!important;border-radius:13px;box-shadow:0 7px 22px #0002;background:#16121f;border:1px solid #ffffff27}
.gallery .rail > article:hover{border-color:#cb9ced89;box-shadow:0 10px 32px #0004}
.gallery .rail .thumb-wrap,.gallery .client-grid .thumb-wrap{height:auto;aspect-ratio:1.57;min-height:0}
.gallery .rail .site-thumb iframe,.gallery .client-grid .site-thumb iframe{width:1200px;height:850px;transform:scale(.3);transform-origin:top left}
.gallery .rail .card-info,.gallery .rail .client-info{padding:13px 15px 15px;min-height:71px;align-items:center}
.gallery .rail .card-info h4,.gallery .rail .client-info h4{font-size:16px;margin:5px 0 0;line-height:1.25;letter-spacing:-.3px}
.gallery .rail .card-subtitle{font-size:9px;letter-spacing:.5px;color:#afa4ba;text-transform:none}
.gallery .rail .card-slogan{display:none}
.gallery .rail .round-link{width:32px;height:32px;min-width:32px;font-size:16px;background:#4f356f;border-color:#805ba3}
.gallery .rail .badge-type{top:9px;left:9px;padding:6px 8px;font-size:8px;letter-spacing:.65px;border:0;background:#1a1627d7}
.gallery .rail .badge-real{background:#1a5a4bcc}
.concept-number{top:8px;right:11px;font-size:25px;opacity:.85}
.gallery .rail .thumb-link{padding:10px;justify-content:flex-end;align-items:flex-end;opacity:0;font-size:11px;background:linear-gradient(transparent 60%,#0006)}
.gallery .rail .thumb-link span{padding:9px 11px;box-shadow:none}
.gallery .rail .thumb-link b{font-size:14px;margin-left:7px}
.gallery .rail .client-card .verify-label{display:none}
.rail-heading{margin:48px 0 20px;align-items:end}
.rail-heading .grid-title{font-size:clamp(19px,2vw,27px);margin-top:7px}
.eyebrow-row{font-size:9px}
.rail-progress{font-size:12px;margin:0;color:#b3a7c0}
.rail-stage > .rail-arrow{position:absolute;z-index:6;top:39%;transform:translateY(-50%);border:1px solid #ffffff8c;background:#261c36db;box-shadow:0 7px 22px #0005;backdrop-filter:blur(7px);width:42px;height:42px;font-size:22px}
.rail-stage > .rail-arrow.prev{left:-20px}
.rail-stage > .rail-arrow.next{right:-20px}
.rail-stage > .rail-arrow:hover:not(:disabled){background:#7f49b8;transform:translateY(-50%) scale(1.05)}
.rail-stage > .rail-arrow:disabled{opacity:.23}
.gallery .rail > article.is-focused{border-color:#bba0d766}
.client-grid.rail{margin-bottom:0}

@media(max-width:1000px){.gallery .rail > article,.gallery .client-grid.rail > article{flex-basis:37%!important;width:37%!important}.gallery .rail{gap:17px!important}.gallery .rail .card-info h4,.gallery .rail .client-info h4{font-size:15px}.rail-stage > .rail-arrow{width:39px;height:39px}.rail-stage > .rail-arrow.prev{left:-12px}.rail-stage > .rail-arrow.next{right:-12px}}
@media(max-width:700px){.gallery .rail > article,.gallery .client-grid.rail > article{flex-basis:75%!important;width:75%!important}.gallery .rail{gap:14px!important}.gallery .rail .thumb-wrap,.gallery .client-grid .thumb-wrap{aspect-ratio:1.56}.gallery .rail .card-info,.gallery .rail .client-info{padding:13px}.gallery .rail .card-info h4,.gallery .rail .client-info h4{font-size:18px}.gallery .rail .round-link{width:35px;height:35px;min-width:35px}.rail-stage > .rail-arrow{width:39px;height:39px}.rail-stage > .rail-arrow.prev{left:-9px}.rail-stage > .rail-arrow.next{right:-9px}.rail-stage{margin-bottom:36px}}
@media(max-width:420px){.gallery .rail > article,.gallery .client-grid.rail > article{flex-basis:83%!important;width:83%!important}.rail-stage > .rail-arrow.next{right:-7px}.gallery .rail .badge-type{font-size:7px}}
/* V6 — twelve differentiated art directions: distinct structure, not just recolouring. */
.concept-v6 .v6-hero{display:block!important;position:relative;min-height:740px!important;height:740px;overflow:hidden;isolation:isolate}
.concept-v6 .v6-hero .photo{width:100%;height:100%;min-height:0;background-size:cover;background-position:center;filter:none}
.concept-v6 .v6-hero h1{margin:0;font-weight:600;letter-spacing:-.065em;line-height:.93}
.concept-v6 .v6-hero p{font-size:17px;line-height:1.7;max-width:425px;margin:25px 0 0}
.concept-v6 .v6-hero em{font-weight:500}
.concept-v6 .v6-hero .v6-copy{position:absolute;z-index:2}
.concept-v6 .v6-hero .v6-background{position:absolute;inset:0;z-index:0}
.concept-v6 .v6-hero .v6-image{position:absolute;z-index:1;overflow:hidden}
.concept-v6 .v6-hero .v6-brow{position:absolute;left:6%;right:6%;top:38px;z-index:3;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;letter-spacing:.16em}
.concept-v6 .v6-hero .v6-bottom{position:absolute;bottom:0;left:0;right:0;z-index:4;display:flex;justify-content:space-between;align-items:center;padding:24px 6%;font-size:12px;letter-spacing:.14em;font-weight:800}
.concept-v6 .v6-hero .v6-stamp{display:grid;place-content:center;border-radius:50%;text-align:center;font-weight:800;line-height:1.12;transform:rotate(12deg)}
.concept-v6 .v6-hero .v6-inline{display:flex;align-items:end;gap:35px;margin-top:20px}
.concept-v6 .v6-hero .v6-inline p{flex:1;margin:0}
.concept-v6 .v6-hero .v6-inline .demo-button{white-space:nowrap;flex-shrink:0}
.concept-v6 .demo-intro,.concept-v6 .service-section{padding-top:100px;padding-bottom:100px}
.concept-v6 .intro-body h2{max-width:750px;font-size:clamp(55px,6vw,100px)}
.concept-v6 .split-copy h2{font-size:clamp(50px,5.3vw,85px)}

/* RESTAURANT — cinematic culinary editorial. */
.concept-v6 .v6-restaurant{color:#fff;background:#161a13}
.v6-restaurant .v6-background .photo{filter:brightness(.48) saturate(.84);background-position:center 62%}
.v6-restaurant .v6-brow{color:#f8e7bf;border-top:1px solid #ffffff88;padding-top:17px}
.v6-restaurant .v6-copy{left:8%;top:20%;width:70%}
.v6-restaurant h1{font:500 clamp(92px,10vw,155px)/.8 'Cormorant Garamond',serif!important;letter-spacing:-.04em!important}
.v6-restaurant h1 i{color:#e9bd75}
.v6-restaurant .v6-copy p{color:#fff!important;max-width:370px}
.v6-restaurant .v6-stamp{position:absolute;right:10%;bottom:11%;width:148px;height:148px;background:#d9ad67;color:#35291b;font:600 25px 'Cormorant Garamond',serif;z-index:2}

/* CRAFT — architect portfolio, restrained technical typography. */
.concept-v6 .v6-craft{background:#e9e5da;color:#26352e}
.v6-craft .v6-brow{color:#35453d}
.v6-craft .v6-image{top:90px;right:5%;width:48%;height:590px}
.v6-craft .v6-copy{top:30%;left:7%;width:51%}
.v6-craft .v6-ghost{position:absolute;z-index:-1;top:-210px;left:-25px;font:600 340px 'Playfair Display',serif;color:#d5d2c8}
.v6-craft h1{font:500 clamp(78px,7vw,112px)/.98 'Playfair Display',serif!important;letter-spacing:-.075em!important}
.v6-craft h1 em{color:#a77a54}
.v6-craft .v6-copy p{max-width:330px;color:#526257}
.v6-craft .v6-side{position:absolute;right:13px;top:38%;writing-mode:vertical-rl;font-size:10px;letter-spacing:.22em;color:#65746a}

/* SPA — floating arched photograph and pale organic canvas. */
.concept-v6 .v6-spa{background:#eddbd7;color:#6b444b}
.v6-spa .v6-image{right:5%;top:38px;width:34%;height:650px;border-radius:280px 280px 0 0}
.v6-spa .v6-image .photo{background-position:center 35%;filter:saturate(.73)}
.v6-spa .v6-copy{left:8%;top:23%;width:57%;text-align:center}
.v6-spa .v6-signature{display:block;font:italic 29px 'Cormorant Garamond',serif;margin:30px 0 18px}
.v6-spa h1{font:italic 500 clamp(103px,10vw,158px)/.85 'Cormorant Garamond',serif!important;letter-spacing:-.055em!important}
.v6-spa h1 em{color:#ba8288}
.v6-spa .v6-copy p{margin:22px auto;color:#805f63}
.v6-spa .v6-ring{position:absolute;top:90px;left:-8%;width:430px;height:590px;border-radius:50%;border:1px solid #c89ea0;transform:rotate(25deg)}
.v6-spa .v6-side{position:absolute;bottom:35px;left:7%;letter-spacing:.2em;font-size:10px}

/* HOTEL — cinematic full-bleed landscape with navigation strip. */
.concept-v6 .v6-hotel{background:#122920;color:white}
.v6-hotel .v6-background .photo{filter:brightness(.54);background-position:center 58%}
.v6-hotel .v6-copy{left:8%;top:25%;width:82%;text-align:center}
.v6-hotel h1{font:500 clamp(110px,11vw,177px)/.83 'Cormorant Garamond',serif!important;letter-spacing:-.04em!important}
.v6-hotel .v6-copy p{margin:23px auto;color:#fff!important}
.v6-hotel .v6-copy .demo-button{background:#f2e8d6;color:#21433a}
.v6-hotel .v6-bottom{background:#102b25b8;border-top:1px solid #ffffff66;color:#fff}

/* LAW — typography-led editorial with sober photography. */
.concept-v6 .v6-law{background:#e8e6df;color:#1a2a3c}
.v6-law .v6-brow{border-top:2px solid #1d2c40;padding-top:15px}
.v6-law .v6-copy{left:7%;top:22%;width:65%}
.v6-law h1{font:500 clamp(91px,9vw,142px)/.98 'Playfair Display',serif!important;letter-spacing:-.075em!important}
.v6-law h1 em{color:#a27b53}
.v6-law .v6-copy p{max-width:340px;color:#5d6671}
.v6-law .v6-image{right:5%;top:125px;width:32%;height:500px;box-shadow:23px 23px #c8c0b4}
.v6-law .v6-image .photo{filter:saturate(.7)}
.v6-law .v6-image>span{position:absolute;bottom:15px;left:18px;right:15px;font-size:10px;letter-spacing:.15em;color:#fff;text-shadow:0 2px 7px #000}

/* SHOP — playful pop retail, angled picture and bold sticker. */
.concept-v6 .v6-shop{background:#ffd4a0;color:#552743}
.v6-shop .v6-ticker{height:58px;display:flex;align-items:center;justify-content:center;background:#f66a65;color:#fff;font-size:13px;font-weight:800;letter-spacing:.15em;white-space:nowrap}
.v6-shop .v6-copy{left:6%;top:22%;width:58%}
.v6-shop h1{font:700 clamp(97px,9vw,148px)/.86 'Space Grotesk',sans-serif!important;letter-spacing:-.09em!important}
.v6-shop h1 i{font-weight:700;color:#ec5b4e}
.v6-shop h1 span{color:#e95d4f}
.v6-shop .v6-copy p{color:#754b59;max-width:350px}
.v6-shop .v6-image{right:4%;top:105px;width:44%;height:550px;clip-path:polygon(11% 0,100% 0,100% 100%,0 100%,0 16%)}
.v6-shop .v6-stamp{position:absolute;right:5%;top:6%;width:122px;height:122px;background:#f96767;color:#fff;font:800 21px 'Space Grotesk',sans-serif}
.v6-shop .v6-bottom{background:#522a45;color:#fff}

/* ASSOCIATION — campaigning poster and cut-out photo. */
.concept-v6 .v6-association{background:#f7f3cd;color:#164839}
.v6-association .v6-copy{top:10%;left:6%;width:57%}
.v6-association h1{font:700 clamp(88px,9vw,143px)/.91 'Space Grotesk',sans-serif!important;letter-spacing:-.09em!important}
.v6-association h1 em,.v6-association h1 span{font-style:normal;color:#f0a93f}
.v6-association .v6-copy p{color:#47675a;max-width:385px}
.v6-association .v6-image{right:5%;top:15%;width:38%;height:570px;border-radius:47% 47% 18% 18%;transform:rotate(4deg)}
.v6-association .v6-image>span{position:absolute;bottom:12%;left:0;right:0;background:#f2af43;padding:16px 10px;text-align:center;font-size:14px;font-weight:800;transform:rotate(-9deg)}
.v6-association .v6-giant-arrow{position:absolute;right:39%;top:25%;font-size:150px;color:#efb452;transform:rotate(9deg);z-index:2}

/* CITY — real portal-like navigation, less brand-ad styling. */
.concept-v6 .v6-city{background:#e8f1f4;color:#173e54}
.v6-city .v6-brow{top:20px;border-bottom:1px solid #fff;padding-bottom:17px;color:#fff;text-shadow:0 1px 5px #0006}
.v6-city .v6-background{height:430px;bottom:auto;top:0}
.v6-city .v6-background .photo{filter:brightness(.78)}
.v6-city .v6-copy{left:6%;right:6%;bottom:38px;top:auto;display:grid;grid-template-columns:1fr 370px;gap:6%;align-items:end}
.v6-city .v6-copy>div:first-child{padding-top:15px}
.v6-city h1{font:500 clamp(93px,9vw,140px)/.89 'Playfair Display',serif!important}
.v6-city h1 em{color:#4c8299}
.v6-city .v6-copy p{color:#52788a}
.v6-city .v6-service-box{background:white;box-shadow:0 20px 45px #183a512b;padding:26px 30px}
.v6-city .v6-service-box strong{font-size:12px;letter-spacing:.16em;display:block;padding-bottom:15px;color:#628191}
.v6-city .v6-service-box a{display:flex;justify-content:space-between;padding:15px 0;border-top:1px solid #d6e2e6;font-size:18px;font-weight:700}

/* FARM — rural field-note meets premium produce brand. */
.concept-v6 .v6-farm{background:#eee3c8;color:#4b602c}
.v6-farm .v6-image{left:0;top:0;width:54%;height:100%;clip-path:ellipse(105% 92% at -7% 48%)}
.v6-farm .v6-copy{right:5%;top:23%;width:44%}
.v6-farm .v6-brow{left:auto;right:5%;width:42%;top:44px;border-bottom:1px solid #88946c;padding-bottom:16px}
.v6-farm h1{font:500 clamp(106px,9.5vw,160px)/.83 'Cormorant Garamond',serif!important}
.v6-farm h1 em{color:#a57734}
.v6-farm .v6-copy p{color:#677653;max-width:350px}
.v6-farm .v6-stamp{position:absolute;right:0;bottom:0;width:125px;height:125px;border:2px solid #7c8e58;font-size:15px;transform:rotate(-13deg)}

/* HEALTH — calm service-oriented Swiss grid. */
.concept-v6 .v6-health{background:#e6f5f0;color:#185a5a}
.v6-health .v6-brow{border-bottom:1px solid #b0d1cb;padding-bottom:18px}
.v6-health .v6-copy{left:7%;top:19%;width:60%}
.v6-health .v6-cross{font-size:100px;color:#62aea2;line-height:1;display:block}
.v6-health h1{font:700 clamp(73px,7.2vw,118px)/1.02 'DM Sans',sans-serif!important;letter-spacing:-.065em!important}
.v6-health h1 em{font-style:normal;color:#6bb3a8}
.v6-health .v6-copy p{color:#477d7b}
.v6-health .v6-image{right:3%;top:160px;width:34%;height:445px;border-radius:220px 220px 15px 15px}
.v6-health .v6-bottom{background:#216c6a;color:white}

/* FESTIVAL — high-contrast experimental music poster. */
.concept-v6 .v6-festival{background:#301353;color:white}
.v6-festival .v6-background .photo{filter:brightness(.37) saturate(1.45)}
.v6-festival .v6-copy{left:7%;top:17%;width:88%}
.v6-festival h1{font:800 clamp(138px,15vw,228px)/.77 'Space Grotesk',sans-serif!important;letter-spacing:-.11em!important;color:#ffe64e;text-shadow:10px 11px #e24591}
.v6-festival h1 em{color:#fff;font-style:normal}
.v6-festival .v6-inline{max-width:740px;margin-top:40px}
.v6-festival .v6-inline p{color:#fff!important}
.v6-festival .v6-bottom{background:#f8df47;color:#371453;padding:14px 4%;font-size:20px;justify-content:center}

/* SPORT — kinetic editorial impact. */
.concept-v6 .v6-sport{background:#152b28;color:#f8ffec}
.v6-sport .v6-background .photo{filter:brightness(.45) saturate(.8);background-position:center 42%}
.v6-sport .v6-copy{left:7%;top:25%;width:88%}
.v6-sport h1{font:800 clamp(140px,16vw,245px)/.77 'Space Grotesk',sans-serif!important;letter-spacing:-.115em!important;transform:skew(-6deg);color:#efffe4;text-shadow:12px 12px #6dad78}
.v6-sport h1 span{color:#c7f277}
.v6-sport .v6-inline{max-width:850px;margin-top:45px}
.v6-sport .v6-inline p{color:#fff!important}
.v6-sport .v6-bottom{background:#c7f277;color:#1b3325;font-size:22px;justify-content:center;letter-spacing:.45em}

@media(max-width:800px){
 .concept-v6 .v6-hero{height:760px!important;min-height:760px!important}
 .concept-v6 .v6-hero .v6-brow{font-size:9px;letter-spacing:.06em;left:5%;right:5%;top:24px}
 .concept-v6 .v6-hero .v6-copy{left:6%;right:6%;width:auto;top:22%;text-align:left}
 .concept-v6 .v6-hero h1{font-size:clamp(60px,12vw,96px)!important;letter-spacing:-.065em!important}
 .concept-v6 .v6-hero p{font-size:14px;max-width:340px}
 .concept-v6 .v6-hero .v6-image{height:290px;width:80%;left:10%;right:auto;top:auto;bottom:18px;clip-path:none}
 .concept-v6 .v6-hero .v6-bottom{font-size:9px;letter-spacing:0;padding:17px 5%}
 .v6-restaurant .v6-copy,.v6-hotel .v6-copy,.v6-festival .v6-copy,.v6-sport .v6-copy{top:23%!important}
 .v6-restaurant .v6-stamp{width:95px;height:95px;font-size:16px;right:3%;bottom:12%}
 .v6-craft .v6-copy,.v6-law .v6-copy,.v6-shop .v6-copy,.v6-association .v6-copy,.v6-farm .v6-copy,.v6-health .v6-copy{top:11%!important}
 .v6-craft .v6-ghost,.v6-craft .v6-side,.v6-association .v6-giant-arrow,.v6-spa .v6-side,.v6-shop .v6-stamp,.v6-farm .v6-stamp{display:none!important}
 .v6-craft .v6-image,.v6-law .v6-image,.v6-shop .v6-image,.v6-association .v6-image,.v6-farm .v6-image,.v6-health .v6-image{top:auto!important;bottom:0!important;width:100%!important;left:0!important;right:0!important;height:250px!important;border-radius:0!important;box-shadow:none!important;transform:none!important}
 .v6-spa .v6-copy{top:10%!important;text-align:center!important}
 .v6-spa .v6-image{bottom:0!important;top:auto!important;width:64%!important;left:18%!important;height:270px!important}
 .v6-spa .v6-signature{margin:18px 0 10px}
 .v6-spa .v6-ring{width:230px;height:350px}
 .v6-shop .v6-ticker{font-size:8px;height:35px;overflow:hidden}
 .v6-shop .v6-copy{top:12%!important}
 .v6-shop .v6-bottom{bottom:0}
 .v6-city .v6-background{height:270px}
 .v6-city .v6-copy{top:265px!important;bottom:auto!important;display:block;width:auto}
 .v6-city .v6-service-box{margin-top:18px;padding:12px 20px}
 .v6-city .v6-service-box a{padding:9px 0;font-size:14px}
 .v6-city .v6-copy p{margin:12px 0}
 .v6-health .v6-cross{font-size:60px}
 .v6-festival h1,.v6-sport h1{font-size:clamp(93px,18vw,145px)!important}
 .concept-v6 .v6-hero .v6-inline{display:block}
 .concept-v6 .v6-hero .v6-inline p{margin-bottom:12px}
 .concept-v6 .demo-intro,.concept-v6 .service-section{padding-top:65px;padding-bottom:65px}
}
/* V8: presentation intentionally restored to V6. No V7 grid or card-size overrides. */

/* Four entirely new first-screen compositions. */
.theme-estate{--serif:'Playfair Display',Georgia,serif;--paper:#e5e2d8;--panel:#d5d1c4;--ink:#2f372f;--mute:#627061;--accent:#a88662;--button:#35473e;--button-text:white}
.theme-pet{--serif:'Space Grotesk',sans-serif;--paper:#f7edc7;--panel:#f3b5a7;--ink:#41305b;--mute:#78607a;--accent:#ea6a74;--button:#533e9e;--button-text:white}
.theme-florist{--serif:'Cormorant Garamond',serif;--paper:#e6b2bb;--panel:#f0d5cb;--ink:#5f2440;--mute:#8c5163;--accent:#7a3c57;--button:#672c45;--button-text:white}
.theme-dental{--serif:'Space Grotesk',sans-serif;--paper:#c1f6e9;--panel:#a8e7dd;--ink:#173e56;--mute:#3b6d78;--accent:#376ec1;--button:#193f75;--button-text:white}
.concept-v6 .v7-estate-image,.concept-v6 .v7-pet-image,.concept-v6 .v7-florist-image,.concept-v6 .v7-dental-image{position:absolute;z-index:1;overflow:hidden}
.concept-v6 .v7-estate-image .photo,.concept-v6 .v7-pet-image .photo,.concept-v6 .v7-florist-image .photo,.concept-v6 .v7-dental-image .photo{width:100%;height:100%}
.concept-v6 .v7-estate-copy,.concept-v6 .v7-pet-copy,.concept-v6 .v7-florist-copy,.concept-v6 .v7-dental-copy{position:absolute;z-index:2}

/* Maison Horizon: luxury editorial real estate, deep botanical green. */
.concept-v6 .v6-estate{background:#e5e2d8;color:#33473b}
.v6-estate .v7-estate-image{top:0;right:0;width:57%;height:100%}
.v6-estate .v7-estate-image .photo{filter:saturate(.78);background-position:center}
.v6-estate .v7-estate-issue{position:absolute;top:35px;left:6%;right:5%;display:flex;justify-content:space-between;z-index:3;font-size:11px;font-weight:800;letter-spacing:.17em}
.v6-estate .v7-estate-issue span{color:#fff;text-shadow:0 2px 6px #0008}
.v6-estate .v7-estate-copy{left:6%;top:23%;width:58%}
.v6-estate h1{font:500 clamp(96px,8.8vw,146px)/.93 'Playfair Display',serif!important;letter-spacing:-.082em!important}
.v6-estate h1 em{color:#b58f65}
.v6-estate .v7-estate-copy p{color:#536557;max-width:330px}
.v6-estate .v7-estate-count{position:absolute;bottom:34px;left:6%;font:500 55px 'Playfair Display',serif;color:#6e8273}
.v6-estate .v7-estate-count span{font-size:30px;color:#a0a995}

/* Pattes & Co: playful lilac, sunshine yellow, oversized organic dog photo. */
.concept-v6 .v6-pet{background:#f7e89f;color:#4b356d}
.v6-pet .v7-pet-shape{position:absolute;top:-25%;right:-17%;width:85%;height:140%;background:#cbb5ef;border-radius:47% 0 0 55%;transform:rotate(-9deg)}
.v6-pet .v7-pet-image{right:2%;bottom:-5%;width:51%;height:88%;border-radius:46% 46% 35% 35%;transform:rotate(5deg)}
.v6-pet .v7-pet-image .photo{background-position:center 40%}
.v6-pet .v7-pet-top{position:absolute;left:6%;right:6%;top:30px;z-index:3;display:flex;justify-content:space-between;font-weight:800;font-size:12px;letter-spacing:.15em}
.v6-pet .v7-pet-copy{top:19%;left:6%;width:62%}
.v6-pet h1{font:800 clamp(93px,9.8vw,158px)/.85 'Space Grotesk',sans-serif!important;letter-spacing:-.105em!important}
.v6-pet h1 em{font-style:normal;color:#f05d76;text-shadow:4px 5px #fff4db}
.v6-pet .v7-pet-copy p{max-width:330px;color:#654d71}
.v6-pet .v7-pet-star{position:absolute;right:44%;bottom:50px;color:#ec627b;font-size:130px;transform:rotate(-18deg);z-index:3}

/* Fleur Sauvage: expressive garden collage on saturated raspberry. */
.concept-v6 .v6-florist{background:#e9b0b8;color:#662b45}
.v6-florist .v7-florist-image{left:0;top:0;width:56%;height:100%;clip-path:ellipse(95% 92% at 7% 48%)}
.v6-florist .v7-florist-image .photo{background-position:center;filter:saturate(1.14)}
.v6-florist .v7-florist-top{position:absolute;top:26px;right:6%;z-index:3;font-size:12px;letter-spacing:.18em;font-weight:800}
.v6-florist .v7-florist-top span{font-size:32px;margin-left:14px;color:#9e4261}
.v6-florist .v7-florist-copy{top:27%;right:4%;width:47%}
.v6-florist h1{font:500 clamp(105px,10vw,165px)/.85 'Cormorant Garamond',serif!important;letter-spacing:-.07em!important}
.v6-florist h1 em{color:#f9eff0}
.v6-florist .v7-florist-copy p{color:#6e3a50;max-width:360px}
.v6-florist .v7-florist-round{position:absolute;left:50%;bottom:28px;z-index:3;width:130px;height:130px;border-radius:50%;background:#773854;color:white;display:grid;place-content:center;text-align:center;line-height:1.2;font-size:16px;font-weight:800;transform:rotate(12deg)}

/* Smile Studio: confident healthcare branding, energetic mint and cobalt. */
.concept-v6 .v6-dental{background:#bff4e7;color:#183f64}
.v6-dental .v7-dental-top{position:absolute;top:31px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.14em;font-weight:800;z-index:3}
.v6-dental .v7-dental-copy{top:24%;left:6%;width:70%}
.v6-dental h1{font:800 clamp(118px,12vw,190px)/.81 'Space Grotesk',sans-serif!important;letter-spacing:-.12em!important}
.v6-dental h1 em{font-style:normal;color:#3970d1;text-shadow:5px 5px #e4fff7}
.v6-dental .v7-dental-copy p{max-width:350px;color:#4c7180}
.v6-dental .v7-dental-image{top:105px;right:3%;width:33%;height:510px;border-radius:190px 190px 20px 20px;transform:rotate(-5deg)}
.v6-dental .v7-dental-spark{position:absolute;right:32%;top:6%;font-size:160px;color:#5c91ee;z-index:3}
.v6-dental .v7-dental-bottom{position:absolute;bottom:0;left:0;right:0;background:#3970d1;color:white;padding:22px 6%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.15em;font-weight:800;z-index:3}

@media(max-width:800px){
 .concept-v6 .v6-estate .v7-estate-copy,.concept-v6 .v6-pet .v7-pet-copy,.concept-v6 .v6-florist .v7-florist-copy,.concept-v6 .v6-dental .v7-dental-copy{left:6%;top:17%;right:6%;width:88%}
 .concept-v6 .v6-estate h1,.concept-v6 .v6-pet h1,.concept-v6 .v6-florist h1,.concept-v6 .v6-dental h1{font-size:clamp(75px,14vw,115px)!important}
 .v6-estate .v7-estate-image,.v6-pet .v7-pet-image,.v6-florist .v7-florist-image,.v6-dental .v7-dental-image{top:auto!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:240px!important;clip-path:none;border-radius:0!important;transform:none!important}
 .v6-pet .v7-pet-shape{right:-60%;top:20%;height:60%}
 .v6-florist .v7-florist-top,.v6-estate .v7-estate-issue span,.v6-pet .v7-pet-top span,.v6-dental .v7-dental-top span{display:none}
 .v6-florist .v7-florist-round,.v6-estate .v7-estate-count,.v6-pet .v7-pet-star,.v6-dental .v7-dental-spark{display:none}
 .v6-dental .v7-dental-bottom{padding:15px 6%;font-size:9px}
}
