/* SeitenPartner · September 2026. Six complete identities, one accessible site. */
:root {
  --paper:#f6f7f2; --surface:#fff; --soft:#ebeee5; --ink:#162b27;
  --muted:#5f6f68; --accent:#265f4b; --accent-ink:#fff; --highlight:#d8ee9a;
  --line:#d5dcd3; --radius:18px; --font:'Manrope',Arial,sans-serif;
  --heading:'Manrope',Arial,sans-serif; --editorial:'DM Serif Display',Georgia,serif;
  color-scheme:light; scroll-behavior:smooth; scroll-padding-top:108px;
}
* { box-sizing:border-box; }
body.public-site { margin:0; background:var(--paper); color:var(--ink); font:15px/1.65 var(--font); overflow-x:clip; }
.public-site :where(a) { color:inherit; }
.public-site :where(button,input,textarea,select) { font:inherit; }
.public-site :where(button,a) { -webkit-tap-highlight-color:transparent; }
.public-site :where(button) { color:inherit; }
.public-site :where(button) { cursor:pointer; }
.public-site :where(img) { max-width:100%; display:block; }
.public-site :where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.public-site [hidden] { display:none !important; }
.public-site main :where(h1,h2,h3,p,figure) { margin:0; }
.public-site main :where(h1,h2,h3) { font-family:var(--heading); font-weight:700; letter-spacing:-.05em; line-height:1.08; text-wrap:balance; }
.public-site main :where(h1) { font-size:clamp(48px,6.5vw,96px); }
.public-site main :where(h2) { font-size:clamp(38px,4.6vw,68px); }
.public-site main :where(h3) { font-size:30px; }
.public-site main :where(h1,h2) em { font-family:var(--editorial); font-weight:400; color:var(--accent); }
.public-site main :where(p) { color:var(--muted); }
.public-site main :where(section) { padding:110px 0; }
.shell { width:min(1320px,calc(100% - 96px)); margin-inline:auto; }
.eyebrow { display:flex; align-items:center; gap:10px; font:700 11px/1.5 var(--font); text-transform:uppercase; letter-spacing:.15em; color:var(--accent); margin:0 0 23px; }
.public-site main .eyebrow { color:var(--accent); margin-bottom:23px; }
.status-dot { width:7px; height:7px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 9%,transparent); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:24px; min-height:53px; padding:14px 23px; border:1px solid var(--accent); border-radius:6px; background:var(--accent); color:var(--accent-ink); text-decoration:none; font:700 13px/1.4 var(--font); transition:background .2s,transform .2s; }
.button span { font-size:20px; line-height:1; }
.button:hover { transform:translateY(-3px); background:color-mix(in srgb,var(--accent) 85%,var(--ink)); }
.button.secondary { background:transparent; border-color:var(--line); color:var(--ink); }
.button.secondary:hover { background:var(--soft); }
.text-link { display:inline-flex; align-items:center; gap:20px; margin-top:24px; color:var(--ink); font-size:13px; font-weight:700; text-underline-offset:6px; text-decoration-thickness:1px; }
.skip-link { position:fixed; top:10px; left:12px; z-index:200; transform:translateY(-150%); padding:12px 18px; background:var(--ink); color:var(--paper); }
.skip-link:focus { transform:none; }
.site-header { position:sticky; top:0; z-index:60; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--paper) 94%,transparent); backdrop-filter:blur(16px); }
.header-inner { display:flex; align-items:center; gap:30px; height:83px; }
.site-brand { display:inline-flex; align-items:center; flex-shrink:0; gap:11px; text-decoration:none; font:800 21px/1 var(--font); letter-spacing:-.055em; }
.brand-symbol { position:relative; display:block; width:25px; height:26px; transform:rotate(-8deg); }
.brand-symbol i { position:absolute; width:17px; height:22px; border-radius:5px; background:var(--accent); top:0; left:0; }
.brand-symbol i:last-child { top:5px; left:8px; background:var(--highlight); border:1px solid color-mix(in srgb,var(--ink) 16%,transparent); }
.desktop-nav { display:flex; justify-content:center; gap:25px; margin-left:auto; }
.desktop-nav a { position:relative; padding:28px 0; text-decoration:none; font-size:12px; font-weight:600; }
.desktop-nav a::after { content:""; position:absolute; left:0; right:0; bottom:19px; height:2px; background:var(--accent); transform:scaleX(0); transition:transform .2s; transform-origin:left; }
.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after { transform:scaleX(1); }
.header-cta { display:flex; align-items:center; gap:20px; padding:12px 17px; border:1px solid var(--line); border-radius:5px; font-size:12px; font-weight:700; text-decoration:none; }
.header-cta:hover { background:var(--soft); }
.menu-toggle { display:none; width:44px; height:44px; border:1px solid var(--line); border-radius:6px; background:none; padding:12px; }
.menu-toggle span { display:block; height:2px; margin:5px 0; background:var(--ink); transition:transform .2s; }
.menu-toggle[aria-expanded=true] span:first-child { transform:translateY(3.5px) rotate(45deg); }
.menu-toggle[aria-expanded=true] span:last-child { transform:translateY(-3.5px) rotate(-45deg); }
.mobile-menu { position:absolute; top:100%; left:0; right:0; padding:14px 24px 24px; background:var(--paper); border-bottom:1px solid var(--line); max-height:calc(100dvh - 72px); overflow:auto; box-shadow:0 30px 35px #0001; }
.mobile-menu a { display:block; padding:14px 4px; border-bottom:1px solid var(--line); font-size:19px; text-decoration:none; }
.public-site main .home-hero { padding:82px 0 0; overflow:hidden; }
.hero-layout { display:grid; grid-template-columns:1fr 1.1fr; align-items:center; gap:65px; min-height:620px; }
.hero-copy { position:relative; z-index:2; }
.hero-copy h1 { font-size:clamp(56px,6.05vw,92px); line-height:1.035; letter-spacing:-.063em; }
.hero-copy h1 em { display:inline-block; }
.public-site main .hero-lead { margin-top:27px; max-width:420px; font-size:18px; line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.public-site main .hero-note { margin-top:20px; font-size:11px; }
.hero-showcase { position:relative; padding:0 0 95px; perspective:1500px; }
.hero-showcase::before { content:""; position:absolute; z-index:-1; width:130%; height:110%; left:-10%; top:-10%; background:radial-gradient(ellipse at center,var(--highlight),transparent 67%); opacity:.42; }
.hero-showcase .studio-preview { position:relative; transform:rotate(-4deg) rotateY(-7deg); box-shadow:0 35px 70px #142f2424; }
.hero-mini { position:absolute; width:220px; height:240px; right:-16px; bottom:17px; padding:22px; background:var(--highlight); color:var(--ink); border:1px solid #172c2322; border-radius:8px; box-shadow:0 20px 40px #142f241e; transform:rotate(6deg); }
.hero-mini>span { font-size:12px; line-height:1.4; }
.hero-mini strong { display:block; margin:8px 0 14px; font:800 100px/.85 var(--font); letter-spacing:-.11em; }
.hero-mini strong span { display:inline-block; font-size:55px; padding-left:6px; vertical-align:top; letter-spacing:0; }
.hero-mini small { display:block; font-size:8px; letter-spacing:.05em; }
.hero-label { position:absolute; display:flex; align-items:center; gap:12px; bottom:25px; left:4px; font-size:10px; }
.hero-label i { display:grid; place-items:center; width:36px; height:36px; border:1px solid var(--line); border-radius:50%; font-size:18px; font-style:normal; }
.hero-baseline { display:flex; justify-content:space-between; align-items:center; margin-top:56px; padding:23px 0; border-top:1px solid var(--line); font-size:10px; letter-spacing:.025em; }
.hero-baseline a { display:flex; gap:18px; text-decoration:none; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:43px; }
.section-heading>div:last-child:not(:first-child) { max-width:360px; }
.section-heading>div:last-child>p { font-size:14px; line-height:1.8; }
.example-grid { display:grid; grid-template-columns:1fr 1fr; gap:45px 28px; }
.example-card { display:block; min-width:0; color:var(--ink); text-decoration:none; }
.example-image { position:relative; overflow:hidden; border-radius:var(--radius); background:var(--soft); aspect-ratio:1.36; }
.example-image img { width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.22,1,.36,1); }
.example-card:hover .example-image img { transform:scale(1.04); }
.example-open { position:absolute; right:19px; top:19px; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#fffffff0; color:#172a24; font-size:23px; transition:transform .25s; }
.example-card:hover .example-open { transform:rotate(45deg); }
.image-label { position:absolute; z-index:2; bottom:12px; left:12px; background:#12231deb; color:#fff; border-radius:4px; padding:6px 9px; font:500 10px/1.4 var(--font); }
.example-meta { display:flex; justify-content:space-between; gap:12px; padding:17px 0 10px; color:var(--muted); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.example-card h3 { font:400 39px/1.1 var(--editorial); letter-spacing:-.04em; }
.example-card p { margin-top:8px; font-size:13px; }
.studio-section { background:var(--soft); }
.style-switcher { display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-bottom:30px; }
.style-button { display:flex; align-items:center; justify-content:center; gap:9px; min-height:47px; padding:9px 16px; background:transparent; border:1px solid color-mix(in srgb,var(--ink) 17%,transparent); border-radius:6px; font-size:12px; font-weight:600; }
.style-button:hover { border-color:var(--accent); }
.style-button[aria-pressed=true] { background:var(--ink); color:var(--paper); border-color:var(--ink); }
.style-button i { width:15px; height:15px; border-radius:50%; border:1px solid #0002; background:#f3e5c9; }
.style-button[data-style="1"] i { background:#73a98b; }
.style-button[data-style="2"] i { background:linear-gradient(90deg,#171717 50%,#fff 50%); }
.style-button[data-style="3"] i { background:#ad9262; }
.style-button[data-style="4"] i { background:#e7ff4a; }
.style-button[data-style="6"] i { background:linear-gradient(135deg,#ebfaff,#8eb8ee); }
.style-button.epic-style { margin-left:auto; background:#12131d; color:#fff; border-color:#12131d; }
.epic-style i { background:linear-gradient(135deg,#8797ff,#dfd6ff); }
.epic-style b { font-size:14px; font-weight:400; margin-left:8px; }
.studio-preview { --pv-bg:#f7f5ef; --pv-text:#263830; --pv-muted:#69786e; --pv-color:#aec4a6; position:relative; container-type:inline-size; width:100%; background:var(--pv-bg); border:1px solid #26383030; border-radius:10px; overflow:hidden; color:var(--pv-text); box-shadow:0 25px 55px #142f2410; }
.preview-browser { height:32px; padding:0 14px; border-bottom:1px solid #26383019; display:flex; align-items:center; justify-content:space-between; background:#fff8; color:#65736d; font:500 8px/1 var(--font); }
.preview-browser>span { display:flex; gap:4px; }
.preview-browser i { display:block; width:5px; height:5px; border-radius:50%; background:#b7c0b6; }
.preview-browser b { font-size:7px; letter-spacing:.05em; font-weight:500; text-transform:uppercase; }
.preview-page { padding:0 5cqw; }
.preview-nav { display:flex; align-items:center; justify-content:space-between; padding:4cqw 0; font:600 1.15cqw/1.3 var(--font); border-bottom:1px solid #26383022; }
.preview-nav strong { font-size:2.8cqw; font-weight:800; letter-spacing:-.06em; }
.preview-nav strong span { margin-left:3px; font-size:1cqw; vertical-align:top; }
.preview-content { display:grid; grid-template-columns:1fr 1fr; gap:2cqw; align-items:center; min-height:37cqw; padding:4cqw 0; }
.preview-copy { z-index:2; position:relative; }
.preview-copy small { display:block; font:600 .85cqw/1.4 var(--font); letter-spacing:.1em; text-transform:uppercase; margin-bottom:2.5cqw; }
.preview-copy>strong { display:block; font:500 6.1cqw/.98 var(--heading); letter-spacing:-.065em; }
.preview-copy>strong em { color:var(--pv-text); font-family:var(--editorial); font-weight:400; white-space:nowrap; }
.public-site main .preview-copy p { color:var(--pv-muted); font:400 1.12cqw/1.7 var(--font); margin:2cqw 0; }
.preview-cta { display:inline-flex; align-items:center; justify-content:space-between; gap:3cqw; padding:1.25cqw 1.6cqw; margin-top:.7cqw; color:#fff; background:var(--pv-text); border-radius:.5cqw; font:600 .9cqw/1.4 var(--font); }
.preview-cta b { font-size:1.4cqw; }
.preview-art { position:relative; height:31cqw; min-width:0; isolation:isolate; overflow:hidden; border-radius:45% 45% 4px 4px; background:linear-gradient(135deg,#e9e0cb 0,#dbd5c1 59%,#c6ccb1 60%); }
.preview-art::before { content:""; position:absolute; z-index:-1; left:0; right:0; bottom:0; height:26%; background:linear-gradient(145deg,#a6b692,#d7d7bc); }
.preview-art::after { content:""; position:absolute; inset:0; box-shadow:inset 0 0 8cqw #243a2024; pointer-events:none; }
.art-window { position:absolute; left:14%; top:15%; width:40%; height:48%; border-radius:45% 45% 0 0; background:linear-gradient(90deg,transparent 48%,#eadfca 48% 53%,transparent 53%),linear-gradient(0deg,#eadfca 0 3%,transparent 3% 52%,#eadfca 52% 57%,transparent 57%),#eef2df; box-shadow:1.8cqw 1cqw 1.8cqw #716f4830; border:1.2cqw solid #e4dac4; }
.art-sun { position:absolute; width:20%; aspect-ratio:1; border-radius:50%; right:14%; top:13%; background:#d7a16a; box-shadow:0 0 5cqw #dfb57d70; }
.art-column { position:absolute; width:25%; height:65%; right:6%; bottom:17%; border-radius:1cqw 1cqw 0 0; background:repeating-linear-gradient(90deg,#b9bea1 0,#c9c9ac .5cqw,#a9b392 1cqw); box-shadow:-1cqw 0 2cqw #2f4b2720; }
.art-table { position:absolute; bottom:18%; left:40%; width:25%; height:24%; background:linear-gradient(90deg,#9e6844,#b77b4e 50%,#8b5939); border-radius:50% 50% 10% 10% / 15% 15% 8% 8%; box-shadow:2cqw 2cqw 2cqw #34492530; }
.art-table::before { content:""; position:absolute; height:18%; left:-28%; right:-28%; top:0; border-radius:50%; background:#c59366; border-bottom:.3cqw solid #875334; }
.art-seat { position:absolute; bottom:16%; left:5%; width:37%; height:24%; background:#dedccc; border-radius:4cqw 4cqw 1cqw 1cqw; box-shadow:0 1cqw .6cqw #4c512c25,inset -1cqw -.5cqw 1cqw #5b623629; }
.art-seat::before { content:""; position:absolute; width:88%; left:6%; height:75%; bottom:45%; border-radius:6cqw 6cqw 1cqw 1cqw; background:linear-gradient(100deg,#f0e9d7,#d6d4bf); transform:rotate(-4deg); box-shadow:1cqw .5cqw 1.5cqw #4e502220; }
.art-vase { position:absolute; height:15%; width:11%; bottom:42%; left:48%; border-radius:25% 25% 45% 45%; background:linear-gradient(90deg,#344a31,#6c7951,#2b472e); }
.art-vase::before { content:""; position:absolute; width:250%; height:130%; bottom:90%; left:-70%; border-left:.2cqw solid #32462f; border-radius:100% 10%; transform:rotate(-24deg); background:linear-gradient(40deg,#557247 45%,transparent 46%); }
.art-caption { position:absolute; bottom:5%; right:8%; font:600 .8cqw/1 var(--font); letter-spacing:.12em; text-transform:uppercase; }
.preview-foot { display:flex; align-items:center; justify-content:space-between; padding:2cqw 0; border-top:1px solid #26383022; color:var(--pv-muted); font:500 .85cqw/1.4 var(--font); }
.studio-preview.is-large { max-width:1120px; margin-inline:auto; }
.is-large .preview-content { min-height:42cqw; }
.is-large .preview-copy>strong { font-size:6.4cqw; }
.is-large .preview-art { height:36cqw; }
.studio-caption { display:flex; align-items:center; justify-content:space-between; gap:30px; max-width:1120px; margin:23px auto 0; }
.studio-caption>div { display:flex; gap:17px; align-items:baseline; }
.studio-caption strong { font-size:14px; }
.studio-caption span { font-size:12px; color:var(--muted); }
.studio-caption p { font-size:10px; max-width:350px; text-align:right; }
.studio-bottom { display:flex; justify-content:space-between; gap:25px; max-width:1120px; margin:40px auto 0; padding-top:28px; border-top:1px solid var(--line); }
.studio-bottom p { font-size:16px; line-height:1.6; }
.public-site main .studio-intro { padding-top:54px; padding-bottom:30px; }
.studio-intro h1 { font-size:clamp(38px,4.5vw,64px); }
.page-stile .studio-section { padding-top:0; background:var(--paper); }
.page-stile .studio-section .section-heading { display:none; }
.epic-teaser { position:relative; background:#08090d; color:#f4f0e9; overflow:hidden; }
.epic-teaser-inner { display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:60px; }
.public-site main .epic-teaser .eyebrow { color:#c2a08d; }
.public-site main .epic-teaser h2 { font-family:'Manrope',Arial,sans-serif; font-weight:600; color:#f4f5fb; }
.public-site main .epic-teaser h2 em { color:#f4ae8b; }
.public-site main .epic-teaser p { max-width:480px; margin:25px 0; color:#b8bfce; }
.epic-teaser .button { background:#fa714a; border-color:#fa714a; color:#180c08; margin-top:28px; }
.epic-teaser small { display:block; margin-top:16px; color:#a4acc0; font-size:10px; }
.epic-poster { position:relative; display:grid; place-content:center; min-height:500px; perspective:800px; }
.epic-poster::before { content:""; position:absolute; inset:-30%; background:radial-gradient(ellipse,#6b38252b,transparent 65%); }
.epic-poster i { position:absolute; inset:7% 12%; border:1px solid #9aacff70; border-radius:26px; transform:rotateY(-23deg) rotateX(10deg) rotateZ(-9deg) translateZ(-50px); box-shadow:0 0 35px #6480ff14,inset 0 0 35px #99b7ff10; background:linear-gradient(120deg,#6178e511,transparent); }
.epic-poster i:nth-child(2) { transform:rotateY(-23deg) rotateX(10deg) rotateZ(-9deg) translateZ(25px); inset:10% 16%; }
.epic-poster i:nth-child(3) { transform:rotateY(-23deg) rotateX(10deg) rotateZ(-9deg) translateZ(100px); inset:13% 20%; border-color:#a7b7ff9a; }
.epic-poster>span { position:relative; z-index:2; font:800 clamp(55px,6.5vw,100px)/.85 'Manrope',Arial,sans-serif; letter-spacing:-.075em; color:#e7ecff; transform:rotate(-8deg); }
.epic-poster>span em { font-family:var(--editorial); font-weight:400; color:#b7c4ff; }
.epic-poster>b { position:absolute; bottom:0; right:9%; font-size:40px; font-weight:300; color:#c2ccf7; }
.epic-poster.epic-poster--website { min-height:0; perspective:none; }
.epic-poster--website img { display:block; width:100%; height:auto; position:relative; }
.offer-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.offer-card { display:flex; flex-direction:column; min-height:570px; padding:32px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }
.offer-number { font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.offer-card h3 { margin-top:34px; font-size:29px; line-height:1.12; }
.offer-card>p { margin-top:17px; min-height:77px; font-size:13px; }
.offer-price { margin:27px 0 15px; font-size:45px; line-height:1.2; font-weight:700; letter-spacing:-.065em; }
.offer-price small { font-size:14px; letter-spacing:0; font-weight:500; }
.offer-price span { display:block; margin-top:5px; font-size:11px; font-weight:400; letter-spacing:0; color:var(--muted); }
.offer-card ul { padding:16px 0 28px; list-style:none; margin:0; font-size:12px; line-height:2.3; }
.offer-card li::before { content:"↗"; color:var(--accent); padding-right:10px; }
.offer-card .button { margin-top:auto; width:100%; }
.offer-card.featured { background:var(--soft); }
.offer-card.care { background:transparent; }
.price-note { font-size:11px; margin-top:23px; max-width:950px; line-height:1.7; }
.process-section { border-top:1px solid var(--line); }
.process-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:50px; }
.process-list article { padding-top:25px; border-top:1px solid var(--line); }
.step-number { display:inline-grid; place-items:center; width:43px; height:43px; border-radius:50%; border:1px solid var(--line); color:var(--accent); font-size:12px; }
.process-list h3 { margin-top:35px; font-size:26px; }
.process-list p { margin-top:15px; font-size:13px; }
.about-section { background:var(--soft); }
.about-layout { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:100px; }
.about-symbol { display:flex; flex-direction:column; justify-content:space-between; min-height:490px; padding:36px; background:var(--accent); color:var(--accent-ink); border-radius:var(--radius); overflow:hidden; }
.about-symbol>span { font:300 350px/.9 var(--font); letter-spacing:-.15em; align-self:center; transform:rotate(-10deg); }
.public-site main .about-symbol p { color:var(--accent-ink); font-size:23px; line-height:1.3; }
.about-layout>div:last-child>p:not(.eyebrow) { margin-top:24px; font-size:14px; }
.about-layout>div:last-child>.large-copy { font-size:20px; color:var(--ink); }
.faq-layout { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; }
.faq-list details { border-bottom:1px solid var(--line); padding:0; }
.faq-list details:first-child { border-top:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:23px 0; cursor:pointer; list-style:none; font-size:14px; font-weight:600; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { flex-shrink:0; font-size:22px; font-weight:400; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details p { padding:0 30px 25px 0; font-size:13px; line-height:1.9; }
.closing-section { position:relative; background:var(--highlight); color:var(--ink); overflow:hidden; }
.closing-section::after { content:"↗"; position:absolute; right:8%; top:-25px; font:300 400px/1 var(--font); color:color-mix(in srgb,var(--ink) 8%,transparent); pointer-events:none; }
.closing-inner { position:relative; z-index:1; }
.public-site main .closing-section h2 { font-size:clamp(44px,5.5vw,82px); }
.closing-inner>div { display:flex; align-items:center; gap:27px; margin-top:37px; }
.closing-inner>div>p { font-size:11px; }
.site-footer { padding:58px 0 20px; border-top:1px solid var(--line); background:var(--paper); }
.footer-top { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; padding-bottom:44px; }
.footer-top p { margin:0; font-size:14px; color:var(--muted); }
.footer-mail { font:400 32px/1.2 var(--editorial); text-decoration:none; }
.footer-links { display:flex; justify-content:space-between; gap:25px; padding:28px 0; border-block:1px solid var(--line); }
.footer-links nav { display:flex; flex-wrap:wrap; gap:11px 24px; }
.footer-links a { font-size:11px; text-decoration:none; }
.footer-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:20px; font-size:9px; color:var(--muted); }
.public-site main .page-intro { padding:80px 0 65px; }
.page-intro>div>p:last-child { max-width:690px; margin-top:28px; font-size:17px; }
.page-intro h1 { font-size:clamp(44px,5.3vw,78px); }
.page-leistungen .offers-section,.page-preise .comparison-section,.public-site main .gallery-page { padding-top:0; }
.table-scroll { overflow:auto; border:1px solid var(--line); border-radius:var(--radius); }
.table-scroll table { width:100%; border-collapse:collapse; text-align:left; font-size:13px; }
.table-scroll caption { text-align:left; padding:22px 28px; font-size:24px; font-weight:700; letter-spacing:-.03em; background:var(--soft); }
.table-scroll th,.table-scroll td { padding:20px 28px; border-bottom:1px solid var(--line); vertical-align:top; }
.table-scroll th { font-weight:600; }
.table-scroll thead { background:var(--soft); }
.table-scroll tbody tr:last-child>* { border-bottom:0; }
.portal-section { background:var(--soft); }
.portal-layout { display:grid; grid-template-columns:1fr 1fr; gap:100px; }
.portal-layout>div>p:not(.eyebrow) { margin-top:25px; max-width:480px; }
.portal-layout ol { list-style:none; padding:0; margin:0; }
.portal-layout li { display:flex; gap:22px; padding:22px 0; border-bottom:1px solid var(--line); }
.portal-layout li>span { font-size:12px; color:var(--accent); padding-top:2px; }
.portal-layout li strong { font-size:17px; }
.portal-layout li p { font-size:12px; margin-top:6px; }
.public-site main .detail-section { padding-top:10px; }
.detail-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; }
.detail-layout>aside { padding:32px; background:var(--soft); border-radius:var(--radius); align-self:start; }
.detail-layout>aside>span { font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.detail-layout>aside>strong { display:block; font-size:35px; letter-spacing:-.05em; margin:22px 0 15px; line-height:1.3; }
.detail-layout>aside>p { margin-bottom:25px; font-size:11px; }
.detail-layout>aside .text-link { display:flex; }
.detail-layout article { padding:26px 0 35px; border-top:1px solid var(--line); }
.detail-layout article>span { font-size:11px; color:var(--muted); }
.detail-layout article h2 { font-size:28px; margin:15px 0; }
.detail-layout article p { max-width:550px; font-size:14px; }
.reading-copy { max-width:850px; }
.reading-copy h2 { margin:40px 0 20px; font-size:32px; }
.reading-copy p { font-size:16px; }
.public-site main .reading-section { padding-top:0; }
.style-toast { position:fixed; bottom:22px; left:50%; z-index:90; transform:translate(-50%,15px); border-radius:6px; padding:9px 16px; background:var(--ink); color:var(--paper); font-size:11px; opacity:0; pointer-events:none; transition:opacity .2s,transform .2s; }
.style-toast.visible { opacity:1; transform:translate(-50%,0); }

/* Contact: server-compatible enquiry, progressively enhanced into three steps. */
.public-site main .contact-section { padding-top:5px; }
.contact-layout { display:grid; grid-template-columns:.65fr 1.35fr; align-items:start; gap:65px; }
.contact-aside { position:sticky; top:120px; padding-right:25px; }
.contact-aside h2 { font-size:45px; }
.contact-aside>p:not(.eyebrow) { margin-top:25px; font-size:13px; }
.contact-aside>small { display:block; margin-top:50px; font-size:11px; color:var(--muted); }
.contact-form-wrap { min-width:0; padding:30px; border:1px solid var(--line); background:var(--surface); border-radius:var(--radius); }
.form-progress { display:flex; gap:22px; padding:0 0 25px; margin:0; list-style:none; border-bottom:1px solid var(--line); }
.form-progress li { display:flex; align-items:center; gap:7px; color:var(--muted); font-size:10px; }
.form-progress li span { display:grid; place-items:center; width:24px; height:24px; border:1px solid var(--line); border-radius:50%; }
.form-progress li[aria-current] { color:var(--ink); font-weight:800; }
.form-progress li[aria-current] span { background:var(--accent); border-color:var(--accent); color:var(--accent-ink); }
.form-step { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
.form-section-title { grid-column:1/-1; display:grid; gap:6px; padding:25px 0 10px; }
.form-section-title strong { font-size:20px; letter-spacing:-.03em; }
.form-section-title span { color:var(--muted); font-size:11px; }
.contact-field { min-width:0; }
.contact-field.full { grid-column:1/-1; }
.contact-field>label,.sub-field,.portal-email-fields label { display:block; font-size:11px; font-weight:700; margin-bottom:7px; }
.contact-field :where(input:not([type=checkbox]):not([type=radio]),select,textarea),.portal-email-fields input { width:100%; min-height:46px; padding:12px; border:1px solid var(--line); background:var(--paper); border-radius:6px; color:var(--ink); font-size:13px; }
.contact-field textarea { min-height:100px; resize:vertical; }
.contact-field select { max-width:100%; }
.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus { border-color:var(--accent); }
.contact-consent { display:flex; align-items:start; gap:10px; font-size:11px; line-height:1.7; }
.contact-consent input { margin-top:4px; flex-shrink:0; width:16px; height:16px; accent-color:var(--accent); }
.choice-field,.account-choice { margin:8px 0 0; padding:17px; border:1px solid var(--line); border-radius:8px; min-width:0; }
.choice-field legend,.account-choice legend { font-size:12px; font-weight:700; padding:0 6px; }
.field-help { margin:0 0 15px; font-size:11px; }
.choice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.choice-card { position:relative; display:flex; flex-direction:column; gap:6px; min-height:105px; padding:14px 12px 14px 35px; background:var(--paper); border:1px solid var(--line); border-radius:6px; cursor:pointer; }
.choice-card input { position:absolute; top:16px; left:11px; width:15px; height:15px; margin:0; accent-color:var(--accent); }
.choice-card strong { font-size:11px; line-height:1.45; }
.choice-card small { font-size:10px; line-height:1.6; color:var(--muted); }
.choice-card em { margin-top:auto; padding-top:7px; font-size:10px; color:var(--accent); font-weight:700; font-style:normal; }
.choice-card:has(input:checked) { border-color:var(--accent); background:color-mix(in srgb,var(--accent) 7%,var(--surface)); box-shadow:inset 0 0 0 1px var(--accent); }
.sub-field { margin-top:20px; }
.account-toggle { display:flex; align-items:start; gap:10px; font-size:12px; }
.account-toggle input { margin-top:4px; accent-color:var(--accent); }
.portal-email-fields { display:grid; grid-template-columns:1fr 1fr; gap:13px; padding:20px 0; }
.account-choice .field-help { margin-top:12px; }
.live-order-summary { display:grid; grid-template-columns:1fr 1fr; gap:15px; padding:22px; margin-top:10px; background:var(--soft); border:1px solid var(--line); border-radius:8px; }
.live-order-summary>div:first-child { grid-column:1/-1; padding-bottom:10px; border-bottom:1px solid var(--line); }
.live-order-summary>div>span { display:block; font-size:9px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); }
.live-order-summary strong { display:block; margin-top:6px; font-size:16px; line-height:1.4; }
.live-order-summary .summary-once { font-size:25px; color:var(--accent); }
.live-order-summary .summary-care { font-size:12px; }
.live-order-summary p { grid-column:1/-1; margin:0; font-size:10px; }
.summary-epic { color:var(--accent); }
.contact-honeypot { position:absolute; left:-10000px; height:1px; width:1px; overflow:hidden; }
.contact-submit { display:flex; flex-direction:column; gap:20px; padding-top:12px; }
.contact-submit small { font-size:11px; color:var(--muted); }
.contact-shield { display:block; margin-top:10px; font-size:10px; color:var(--muted); }
.contact-shield.ready { color:var(--accent); }
.contact-shield.error { color:#ad410d; }
.contact-submit .button { font-size:12px; width:100%; }
.contact-submit .button:disabled { opacity:.55; cursor:wait; }
.form-navigation { display:flex; justify-content:space-between; gap:15px; padding-top:30px; }
.form-navigation [data-form-next] { margin-left:auto; }

/* Six identities: palette, typography, shape AND composition change together. */
html[data-style="0"] { --paper:#f6efe3; --surface:#fffaf2; --soft:#eae0ce; --ink:#3a2a23; --muted:#786559; --accent:#8a3f30; --highlight:#e6cca4; --line:#d9cabb; --radius:3px; --heading:'DM Serif Display',Georgia,serif; }
html[data-style="0"] .hero-copy h1,html[data-style="0"] main h2 { font-weight:400; letter-spacing:-.04em; }
html[data-style="0"] .button { border-radius:2px; }
html[data-style="0"] .studio-preview { --pv-bg:#f6ead6; --pv-text:#583624; --pv-muted:#866b53; --pv-color:#c99c72; border-radius:2px; }
html[data-style="0"] .preview-page { padding:0 7cqw; }
html[data-style="0"] .preview-nav { justify-content:center; gap:6cqw; border-bottom:double 3px #58362444; }
html[data-style="0"] .preview-nav strong { font-family:var(--editorial); font-size:3.5cqw; font-weight:400; }
html[data-style="0"] .preview-content { grid-template-columns:1fr 1fr; gap:5cqw; padding:5cqw 0; }
html[data-style="0"] .preview-copy { text-align:center; }
html[data-style="0"] .preview-copy>strong { font-family:var(--editorial); font-size:5.7cqw; letter-spacing:-.025em; font-weight:400; }
html[data-style="0"] .preview-art { height:34cqw; border-radius:45% 45% 0 0; filter:sepia(.22); outline:1px solid #58362455; outline-offset:-1.5cqw; }
html[data-style="0"] .preview-cta { border-radius:0; }
html[data-style="0"] .example-image { border:7px solid var(--surface); outline:1px solid var(--line); }
html[data-style="0"] .offer-card h3 { font-weight:400; font-size:34px; }
html[data-style="2"] { --paper:#fff; --surface:#fff; --soft:#f5f5f5; --ink:#181818; --muted:#686868; --accent:#181818; --highlight:#ededed; --line:#d9d9d9; --radius:0px; --heading:'Manrope',Arial,sans-serif; }
html[data-style="2"] .button { border-radius:0; }
html[data-style="2"] .hero-copy h1 { font-size:clamp(50px,5.7vw,85px); font-weight:500; letter-spacing:-.07em; }
html[data-style="2"] .hero-mini { background:#f1f1f1; transform:none; border-radius:0; box-shadow:none; }
html[data-style="2"] .hero-showcase .studio-preview { transform:none; box-shadow:none; }
html[data-style="2"] .studio-preview { --pv-bg:#fff; --pv-text:#151515; --pv-muted:#707070; border-radius:0; box-shadow:none; }
html[data-style="2"] .preview-page { padding:0 6cqw; }
html[data-style="2"] .preview-content { grid-template-columns:1.2fr .8fr; gap:5cqw; padding:6cqw 0; }
html[data-style="2"] .preview-copy>strong { font-size:5cqw; font-weight:400; letter-spacing:-.06em; }
html[data-style="2"] .preview-copy>strong em { font-family:var(--font); font-style:normal; }
html[data-style="2"] .preview-art { height:25cqw; border-radius:0; filter:grayscale(1); }
html[data-style="2"] .preview-cta { padding:1cqw 0; border-bottom:1px solid; background:none; color:var(--pv-text); border-radius:0; }
html[data-style="2"] .example-image img { filter:grayscale(1); }
html[data-style="2"] .offer-card { border-left:0; border-right:0; padding-inline:20px; }
html[data-style="3"] { --paper:#152924; --surface:#1a302a; --soft:#21372e; --ink:#f3eadb; --muted:#b9c0af; --accent:#ddc495; --accent-ink:#172720; --highlight:#2c4434; --line:#405245; --radius:4px; --heading:'DM Serif Display',Georgia,serif; color-scheme:dark; }
html[data-style="3"] .hero-copy h1,html[data-style="3"] main h2 { font-weight:400; letter-spacing:-.035em; }
html[data-style="3"] .hero-showcase .studio-preview { transform:rotate(-3deg); }
html[data-style="3"] .hero-mini { background:#cbb786; color:#162a22; }
html[data-style="3"] .studio-preview { --pv-bg:#14291f; --pv-text:#f0e3ca; --pv-muted:#bbc1ac; border-color:#c8b78766; border-radius:3px; }
html[data-style="3"] .preview-browser { background:#14291f; color:#c3c7b9; border-color:#c8b78733; }
html[data-style="3"] .preview-nav { border-color:#c8b78733; }
html[data-style="3"] .preview-nav strong { font-family:var(--editorial); font-weight:400; letter-spacing:.025em; }
html[data-style="3"] .preview-content { position:relative; display:block; padding:8cqw 0; min-height:43cqw; }
html[data-style="3"] .preview-art { position:absolute; top:2cqw; bottom:2cqw; right:-5cqw; width:64%; height:auto; border-radius:50% 0 0 0; filter:brightness(.7) saturate(.75); }
html[data-style="3"] .preview-art::after { background:linear-gradient(90deg,#14291f,transparent 60%); box-shadow:none; }
html[data-style="3"] .preview-copy { width:70%; }
html[data-style="3"] .preview-copy>strong { font-family:var(--editorial); font-size:7cqw; letter-spacing:-.04em; font-weight:400; }
html[data-style="3"] .preview-copy small { letter-spacing:.2em; color:#dfc58e; }
html[data-style="3"] .preview-cta { background:#d0b981; color:#17291f; border-radius:0; }
html[data-style="3"] .preview-foot { border-color:#c8b78733; }
html[data-style="3"] .offer-card h3 { font-weight:400; font-size:35px; }
html[data-style="3"] .about-symbol { background:#d1ba8f; color:#1b3126; }
html[data-style="3"] .about-symbol p { color:#1b3126; }
html[data-style="4"] { --paper:#f4f3e9; --surface:#fffef6; --soft:#e8ebd7; --ink:#1c2117; --muted:#5e6251; --accent:#252e16; --highlight:#ddfa5e; --line:#bac0a7; --radius:0px; --heading:'Manrope',Arial,sans-serif; }
html[data-style="4"] .hero-copy h1 { font-weight:800; text-transform:uppercase; font-size:clamp(48px,5.2vw,78px); letter-spacing:-.075em; }
html[data-style="4"] .hero-copy h1 em { color:var(--ink); font-family:var(--font); font-style:normal; font-weight:800; background:var(--highlight); box-shadow:8px 0 0 var(--highlight),-3px 0 0 var(--highlight); }
html[data-style="4"] .button { border-radius:0; border-width:2px; box-shadow:3px 3px 0 var(--ink); }
html[data-style="4"] .hero-mini { transform:rotate(10deg); box-shadow:7px 7px 0 var(--ink); border:2px solid var(--ink); border-radius:0; }
html[data-style="4"] .studio-preview { --pv-bg:#dffc65; --pv-text:#1b2117; --pv-muted:#536034; border:2px solid #1b2117; border-radius:0; box-shadow:7px 7px 0 #1b2117; }
html[data-style="4"] .preview-browser { background:#1b2117; color:#dffc65; }
html[data-style="4"] .preview-content { grid-template-columns:1.15fr .85fr; gap:0; }
html[data-style="4"] .preview-copy>strong { font:800 6.3cqw/.92 var(--font); text-transform:uppercase; letter-spacing:-.075em; }
html[data-style="4"] .preview-copy>strong em { font:inherit; white-space:normal; }
html[data-style="4"] .preview-art { border-radius:0; transform:rotate(6deg); border:1cqw solid #1b2117; height:34cqw; filter:saturate(1.3); }
html[data-style="4"] .preview-cta { border-radius:0; background:#1b2117; color:#dffc65; }
html[data-style="4"] .offer-card { border:2px solid var(--ink); }
html[data-style="4"] .offer-card.featured { background:var(--highlight); }
html[data-style="4"] .about-symbol>span { transform:rotate(0); }
html[data-style="6"] { --paper:#eef3fa; --surface:#ffffffa8; --soft:#e1ebf7; --ink:#1e3553; --muted:#64758f; --accent:#3562a3; --highlight:#d2e4ff; --line:#becfe3; --radius:30px; --heading:'Manrope',Arial,sans-serif; }
html[data-style="6"] body.public-site { background:radial-gradient(ellipse at 90% 0,#bddeed,transparent 50rem),radial-gradient(ellipse at 0 40%,#d4e2ff,transparent 60rem),var(--paper); }
html[data-style="6"] .button,html[data-style="6"] .style-button { border-radius:99px; }
html[data-style="6"] .hero-copy h1 { font-weight:600; letter-spacing:-.07em; }
html[data-style="6"] .hero-mini { background:#ffffff80; backdrop-filter:blur(25px); border:1px solid #ffffffda; border-radius:28px; }
html[data-style="6"] .studio-preview { --pv-bg:#eaf3fd; --pv-text:#31506c; --pv-muted:#6d7e91; border:1px solid #fff; border-radius:25px; background:radial-gradient(ellipse at 15% 60%,#cee8f6,transparent 70%),#eaf3fd; }
html[data-style="6"] .preview-content { grid-template-columns:1.1fr .9fr; padding:5cqw 0; }
html[data-style="6"] .preview-copy { padding:3cqw; margin-right:-13cqw; border-radius:3cqw; border:1px solid #ffffffc9; background:#ffffff5c; backdrop-filter:blur(20px); box-shadow:0 1cqw 3cqw #42628b1a,inset 0 1px 0 #fff; }
html[data-style="6"] .preview-copy>strong { font:500 5.8cqw/1.02 var(--font); letter-spacing:-.07em; }
html[data-style="6"] .preview-copy>strong em { font-family:var(--editorial); }
html[data-style="6"] .preview-art { height:36cqw; border-radius:35% 35% 35% 10%; filter:hue-rotate(40deg) saturate(.7); }
html[data-style="6"] .preview-cta { border-radius:99px; background:#577fac; }
html[data-style="6"] .offer-card { backdrop-filter:blur(20px); box-shadow:0 20px 40px #53719c0d,inset 0 1px 0 #fff; border-color:#fff; }

@media (min-width:1700px) { .shell { width:min(1480px,calc(100% - 160px)); } .hero-layout { min-height:710px; gap:90px; } .hero-copy h1 { font-size:104px; } }
@media (max-width:1150px) {
  .shell { width:calc(100% - 64px); }
  .desktop-nav { gap:17px; }
  .header-inner { gap:20px; }
  .site-brand { font-size:19px; }
  .hero-layout { gap:35px; min-height:570px; }
  .hero-copy h1 { font-size:clamp(51px,6vw,72px); }
  .hero-mini { width:165px; height:192px; right:-6px; }
  .hero-mini strong { font-size:77px; }
  .hero-mini strong span { font-size:40px; }
  .hero-mini>span { font-size:10px; }
  .hero-mini small { font-size:6px; }
  .hero-label { left:-15px; font-size:8px; }
  .offer-card { padding:23px; }
  .offer-card h3 { font-size:25px; }
  .epic-teaser-inner,.about-layout,.portal-layout { gap:55px; }
  .contact-layout { gap:35px; grid-template-columns:.6fr 1.4fr; }
  .contact-form-wrap { padding:23px; }
  .footer-links { flex-direction:column; }
}
@media (max-width:950px) {
  .desktop-nav { display:none; }
  .header-cta { margin-left:auto; }
  .menu-toggle { display:block; }
  .hero-layout { grid-template-columns:1fr 1fr; gap:24px; }
  .hero-copy h1 { font-size:54px; }
  .hero-actions .button { padding:12px 16px; font-size:11px; gap:15px; }
  .hero-label { display:none; }
  .hero-showcase { padding-bottom:90px; }
  .offer-grid { gap:10px; }
  .offer-card h3 { font-size:22px; }
  .offer-card { padding:20px; min-height:550px; }
  .offer-card>p { font-size:12px; min-height:100px; }
  .offer-card .button { font-size:10px; padding:12px 10px; gap:8px; }
  .offer-price { font-size:37px; }
  .offer-card ul { font-size:11px; }
  .process-list { gap:27px; }
  .about-symbol { min-height:430px; }
  .about-symbol>span { font-size:280px; }
  .faq-layout { gap:45px; }
  .epic-teaser-inner { gap:35px; }
  .epic-poster { min-height:420px; }
  .contact-layout { display:block; }
  .contact-aside { position:static; padding:0 0 35px; max-width:660px; }
  .contact-aside h2 { display:none; }
  .contact-aside>small { margin-top:20px; }
  .contact-aside .eyebrow { display:none; }
  .contact-aside>p:not(.eyebrow) { margin-top:0; }
}
@media (max-width:700px) {
  :root { scroll-padding-top:90px; }
  .shell { width:calc(100% - 36px); }
  .public-site main :where(section) { padding:70px 0; }
  .public-site main :where(h1) { font-size:48px; }
  .public-site main :where(h2) { font-size:40px; }
  .public-site main .eyebrow { font-size:9px; letter-spacing:.12em; margin-bottom:18px; }
  .header-inner { height:70px; gap:10px; }
  .site-brand { font-size:18px; gap:8px; }
  .brand-symbol { transform:scale(.9) rotate(-8deg); }
  .header-cta { font-size:10px; padding:10px 12px; gap:9px; }
  .header-cta span { display:none; }
  .menu-toggle { width:39px; height:39px; padding:10px; }
  .public-site main .home-hero { padding-top:47px; }
  .hero-layout { display:block; min-height:0; }
  .hero-copy h1 { font-size:clamp(49px,12vw,77px); letter-spacing:-.065em; }
  .public-site main .hero-lead { font-size:15px; margin-top:22px; }
  .hero-actions { margin-top:24px; gap:8px; }
  .hero-actions .button { min-height:49px; font-size:11px; padding:13px 17px; gap:16px; }
  .public-site main .hero-note { font-size:9px; margin-top:16px; }
  .hero-showcase { margin:53px 0 0; padding:0 14px 92px 0; }
  .hero-showcase .studio-preview { transform:rotate(-3deg); }
  .hero-mini { width:137px; height:151px; padding:15px; right:2px; bottom:0; }
  .hero-mini strong { font-size:62px; margin:5px 0 10px; }
  .hero-mini strong span { font-size:30px; }
  .hero-mini>span { font-size:8px; }
  .hero-mini small { font-size:5px; }
  .hero-label { display:flex; left:0; bottom:22px; font-size:7px; gap:7px; }
  .hero-label i { width:25px; height:25px; font-size:14px; }
  .hero-baseline { margin-top:28px; padding:19px 0; font-size:8px; gap:15px; }
  .hero-baseline>span { max-width:210px; }
  .section-heading { display:block; margin-bottom:28px; }
  .section-heading>div:last-child:not(:first-child) { max-width:100%; margin-top:24px; }
  .section-heading>div:last-child>p { font-size:13px; }
  .example-grid { grid-template-columns:1fr; gap:35px; }
  .example-image { aspect-ratio:1.24; }
  .example-meta { font-size:9px; }
  .example-card h3 { font-size:34px; }
  .example-card p { font-size:12px; }
  .image-label { font-size:9px; left:10px; bottom:10px; }
  .style-switcher { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-bottom:22px; }
  .style-button { padding:9px 7px; min-height:44px; font-size:10px; gap:6px; white-space:nowrap; }
  .style-button i { width:12px; height:12px; }
  .style-button.epic-style { margin:0; grid-column:1/-1; min-height:40px; }
  .style-button.epic-style span { display:flex; gap:6px; }
  .preview-browser { height:24px; padding:0 9px; font-size:7px; }
  .preview-browser b { display:none; }
  .preview-browser i { width:4px; height:4px; }
  .studio-preview.is-large { border-radius:8px; }
  .is-large .preview-page { padding:0 6cqw; }
  .is-large .preview-nav { padding:5cqw 0; }
  .is-large .preview-nav strong { font-size:4.5cqw; }
  .is-large .preview-nav>span { font-size:1.8cqw; }
  .is-large .preview-content { grid-template-columns:1fr; gap:6cqw; padding:7cqw 0; min-height:0; }
  .is-large .preview-copy>strong { font-size:11cqw; }
  .is-large .preview-copy small { font-size:1.6cqw; margin-bottom:4cqw; }
  .public-site main .is-large .preview-copy p { font-size:2.2cqw; margin:3cqw 0; }
  .is-large .preview-cta { font-size:2cqw; padding:2.5cqw 3cqw; margin-top:2cqw; }
  .is-large .preview-cta b { font-size:3cqw; }
  .is-large .preview-art { height:60cqw; border-radius:3cqw; }
  .is-large .preview-foot { padding:3cqw 0; font-size:1.5cqw; }
  .is-large .art-caption { font-size:1.5cqw; }
  .studio-caption { display:block; margin-top:19px; }
  .studio-caption>div { gap:12px; }
  .studio-caption strong { font-size:12px; }
  .studio-caption span { font-size:10px; }
  .studio-caption p { text-align:left; font-size:9px; margin-top:10px; max-width:100%; }
  .studio-bottom { display:block; margin-top:24px; padding-top:22px; }
  .studio-bottom p { font-size:14px; }
  .studio-bottom .button { margin-top:20px; }
  .public-site main .studio-intro { padding-top:35px; padding-bottom:25px; }
  .studio-intro h1 { font-size:36px; }
  .epic-teaser-inner { grid-template-columns:1fr; gap:28px; }
  .epic-teaser h2 { font-size:39px; }
  .public-site main .epic-teaser p { font-size:13px; margin:22px 0; }
  .epic-poster { min-height:340px; }
  .epic-poster>span { font-size:75px; }
  .epic-poster i { inset:7% 18%; }
  .epic-poster i:nth-child(2) { inset:10% 22%; }
  .epic-poster i:nth-child(3) { inset:13% 26%; }
  .epic-poster>b { right:17%; font-size:30px; }
  .offer-grid { grid-template-columns:1fr; gap:15px; }
  .offer-card { min-height:0; padding:28px; }
  .offer-card h3 { font-size:31px; margin-top:25px; }
  .offer-card>p { min-height:0; max-width:400px; font-size:13px; }
  .offer-price { font-size:43px; margin:23px 0 0; }
  .offer-card ul { font-size:12px; padding-bottom:24px; }
  .offer-card .button { font-size:12px; padding:14px 18px; }
  .price-note { font-size:10px; }
  .process-list { grid-template-columns:1fr; gap:27px; }
  .process-list article { display:grid; grid-template-columns:40px 1fr; gap:9px 17px; padding-top:24px; }
  .step-number { width:36px; height:36px; grid-row:1/3; }
  .process-list h3 { margin:0; padding-top:3px; font-size:24px; }
  .process-list p { margin:0; font-size:12px; grid-column:2; }
  .about-layout { grid-template-columns:1fr; gap:35px; }
  .about-symbol { min-height:290px; padding:27px; }
  .about-symbol>span { align-self:end; position:relative; font-size:245px; margin-top:-20px; margin-bottom:-20px; }
  .public-site main .about-symbol p { font-size:23px; }
  .about-layout>div:last-child>.large-copy { font-size:19px; }
  .faq-layout { grid-template-columns:1fr; gap:37px; }
  .faq-list summary { font-size:13px; padding:20px 0; }
  .faq-list details p { font-size:12px; }
  .closing-section::after { right:-15%; top:65px; font-size:290px; }
  .public-site main .closing-section h2 { font-size:43px; }
  .closing-inner>div { align-items:start; flex-direction:column; gap:16px; margin-top:28px; }
  .site-footer { padding-top:40px; }
  .footer-top { display:grid; gap:22px; padding-bottom:28px; }
  .footer-top p { font-size:13px; }
  .footer-mail { font-size:30px; }
  .footer-links { gap:24px; padding:23px 0; }
  .footer-links nav { gap:13px 24px; }
  .footer-links a { font-size:10px; }
  .footer-bottom { font-size:8px; }
  .footer-bottom>span:last-child { max-width:150px; text-align:right; }
  .public-site main .page-intro { padding:45px 0 37px; }
  .page-intro h1 { font-size:39px; }
  .page-intro>div>p:last-child { font-size:14px; margin-top:23px; }
  .table-scroll th,.table-scroll td { padding:15px 12px; min-width:110px; font-size:10px; }
  .table-scroll th:first-child { min-width:114px; }
  .table-scroll caption { font-size:21px; padding:18px; }
  .portal-layout { grid-template-columns:1fr; gap:28px; }
  .portal-layout>div>p:not(.eyebrow) { font-size:13px; }
  .portal-layout li strong { font-size:15px; }
  .detail-layout { grid-template-columns:1fr; gap:32px; }
  .detail-layout>aside { padding:25px; }
  .detail-layout article h2 { font-size:26px; }
  .detail-layout article p { font-size:13px; }
  .reading-copy h2 { font-size:27px; }
  .reading-copy p { font-size:14px; }
  .contact-form-wrap { padding:18px; }
  .form-progress { gap:12px; padding-bottom:18px; justify-content:space-between; }
  .form-progress li { font-size:8px; gap:5px; }
  .form-progress li span { width:21px; height:21px; }
  .form-step { grid-template-columns:1fr; }
  .contact-field.full,.form-section-title { grid-column:auto; }
  .form-section-title strong { font-size:18px; }
  .contact-field :where(input:not([type=checkbox]):not([type=radio]),select,textarea),.portal-email-fields input { font-size:16px; }
  .choice-field,.account-choice { padding:12px; }
  .choice-grid { gap:7px; }
  .choice-card { padding:12px 9px 12px 30px; min-height:119px; }
  .choice-card input { left:9px; top:14px; width:13px; height:13px; }
  .choice-card strong { font-size:10px; }
  .choice-card small,.choice-card em { font-size:9px; }
  .package-choice-grid { grid-template-columns:1fr; }
  .package-choice { min-height:0; }
  .portal-email-fields { grid-template-columns:1fr; }
  .live-order-summary { padding:16px; gap:15px; }
  .contact-submit .button { font-size:11px; padding:14px; }
  .form-navigation .button { min-height:46px; font-size:11px; }
  html[data-style="0"] .hero-copy h1,html[data-style="3"] .hero-copy h1 { font-size:clamp(49px,12vw,77px); }
  html[data-style="0"] .is-large .preview-content { grid-template-columns:1fr; padding:7cqw 0; }
  html[data-style="0"] .is-large .preview-copy>strong { font-size:10cqw; }
  html[data-style="0"] .is-large .preview-art { height:54cqw; border-radius:45% 45% 0 0; }
  html[data-style="2"] .hero-copy h1 { font-size:clamp(46px,11.5vw,70px); }
  html[data-style="2"] .is-large .preview-content { grid-template-columns:1fr; padding:10cqw 0; gap:9cqw; }
  html[data-style="2"] .is-large .preview-copy>strong { font-size:10cqw; }
  html[data-style="2"] .is-large .preview-art { height:38cqw; }
  html[data-style="3"] .is-large .preview-content { display:block; min-height:99cqw; padding-top:20cqw; }
  html[data-style="3"] .is-large .preview-copy { width:100%; }
  html[data-style="3"] .is-large .preview-copy>strong { font-size:12cqw; }
  html[data-style="3"] .is-large .preview-art { width:85%; top:6cqw; bottom:6cqw; right:-6cqw; height:auto; }
  html[data-style="3"] .is-large .preview-art::after { background:linear-gradient(90deg,#14291fba,transparent),linear-gradient(#14291f22,#14291f88); }
  html[data-style="3"] .is-large .preview-copy p { color:#e4e4d9; }
  html[data-style="4"] .hero-copy h1 { font-size:clamp(43px,10.7vw,65px); }
  html[data-style="4"] .is-large .preview-content { grid-template-columns:1fr; }
  html[data-style="4"] .is-large .preview-copy>strong { font-size:11cqw; }
  html[data-style="4"] .is-large .preview-art { height:51cqw; width:90%; margin:auto; transform:rotate(4deg); }
  html[data-style="6"] .is-large .preview-content { position:relative; display:block; min-height:102cqw; padding:15cqw 0; }
  html[data-style="6"] .is-large .preview-copy { width:90%; margin:0; padding:5cqw; }
  html[data-style="6"] .is-large .preview-copy>strong { font-size:10cqw; }
  html[data-style="6"] .is-large .preview-art { position:absolute; right:-6cqw; top:5cqw; width:90%; height:90cqw; }
}
@media (max-width:370px) {
  .shell { width:calc(100% - 28px); }
  .site-brand { font-size:16px; gap:4px; }
  .header-cta { font-size:9px; padding:9px; }
  .header-inner { gap:7px; }
  .hero-actions .button { padding:12px; font-size:10px; gap:10px; }
  .hero-mini { width:120px; right:0; }
  .hero-label { font-size:6px; }
  .style-button { font-size:9px; padding:8px 5px; }
  .studio-intro h1 { font-size:32px; }
  .choice-grid { grid-template-columns:1fr; }
  .choice-card { min-height:80px; }
  .form-progress li { font-size:7px; gap:4px; }
}
@media (prefers-reduced-motion:reduce) {
  :root { scroll-behavior:auto; }
  .public-site * { scroll-behavior:auto !important; }
  .public-site :where(.button,.example-image img,.style-toast) { transition:none; }
}
