/* Maybels fixed design system: layout and components live here. Seasons only override tokens. */
:root{--bg:#110c12;--surface:#fffaf8;--surface-alt:#f7ecec;--text:#241720;--muted:#765f6a;--primary:#b51d69;--primary-dark:#7d1047;--rose:#dc9aa8;--gold:#d5ac69;--gold-light:#f5dbab;--line:#e6d7d8;--hero-a:#170d18;--hero-b:#43213a;--glow:.34;--particle-opacity:.2;--radius:20px;--radius-large:42px;--max:1180px;--shadow:0 20px 70px rgb(47 15 37 / .14)}
.theme-spring{--primary:#ad2f6d;--rose:#eca8bd;--hero-b:#4b2942;--glow:.4}.theme-easter{--primary:#a8397a;--rose:#efb4cb;--gold:#d3ad76}.theme-summer{--primary:#ae3965;--rose:#e4a08f;--hero-b:#40213c}.theme-autumn{--primary:#a3424b;--rose:#dd9a84;--gold:#c99555;--hero-b:#42211f}.theme-halloween{--primary:#d05839;--rose:#b35d61;--gold:#db9b44;--hero-a:#180e1a;--hero-b:#33213a}.theme-christmas{--primary:#a92b50;--rose:#d38b93;--gold:#d8b365;--hero-a:#180c13;--hero-b:#3b1b2d}.theme-valentine{--primary:#c51e64;--rose:#f1a1bd;--gold:#e0b778;--hero-b:#4d1937}
.theme-spring .hero-atmosphere{background:radial-gradient(ellipse at center,#f7d7e2 0 9%,transparent 10% 19%,#dca1b7 20% 24%,transparent 25% 41%,#e9c7a1 42% 47%,transparent 48%);opacity:.35}.theme-easter .hero-atmosphere{border-radius:48% 52% 50% 50% / 58% 58% 42% 42%;background:radial-gradient(ellipse at 32% 35%,#f4d7e7 0 5%,transparent 6%),radial-gradient(ellipse at 68% 62%,#d9e3bd 0 5%,transparent 6%),radial-gradient(ellipse,#edc5d7,transparent 64%);opacity:.42}.theme-summer .hero-atmosphere{background:radial-gradient(circle at 42% 38%,#ffe0b0 0 3%,transparent 4%),radial-gradient(circle at 66% 57%,#ffc3a8 0 3%,transparent 4%),radial-gradient(circle,#f7c6a9,transparent 64%);opacity:.34}.theme-autumn .hero-atmosphere{background:conic-gradient(from 32deg at 50% 50%,transparent 0 9%,#d19462 10% 13%,transparent 14% 29%,#b96f68 30% 34%,transparent 35% 52%,#d5a169 53% 57%,transparent 58%);opacity:.25}.theme-halloween .hero-atmosphere{background:radial-gradient(ellipse at center,#75527c 0 2%,transparent 3%),radial-gradient(ellipse at 30% 40%,#422349 0 14%,transparent 15%),radial-gradient(ellipse at 70% 60%,#c47645 0 2%,transparent 3%);opacity:.42}.theme-christmas .hero-atmosphere{background:radial-gradient(circle at 25% 26%,#ffe2a5 0 1%,transparent 2%),radial-gradient(circle at 68% 48%,#ffe2a5 0 1%,transparent 2%),radial-gradient(circle at 48% 72%,#ffe2a5 0 1%,transparent 2%),radial-gradient(circle,#a72543,transparent 64%);opacity:.5}.theme-valentine .hero-atmosphere{background:radial-gradient(circle at 33% 38%,#f4c0d6 0 4%,transparent 5%),radial-gradient(circle at 67% 62%,#ed9bbb 0 4%,transparent 5%),radial-gradient(circle,#dd5d96,transparent 64%);opacity:.42}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--surface);color:var(--text);font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 10% 12%,color-mix(in srgb,var(--rose) 18%,transparent),transparent 32%),radial-gradient(circle at 92% 82%,color-mix(in srgb,var(--gold) 14%,transparent),transparent 28%)}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.06;margin:.15em 0 .35em;letter-spacing:-.035em}h1{font-size:clamp(3rem,7vw,6.2rem);font-weight:500}h2{font-size:clamp(2.2rem,4.5vw,4.3rem);font-weight:500}h3{font-size:clamp(1.42rem,2vw,1.75rem)}p{margin:.4rem 0 1rem}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.skip{position:absolute;left:-9999px;z-index:99}.skip:focus{left:1rem;top:1rem;background:#fff;color:#111;padding:.75rem 1rem;border-radius:8px}.preview{background:var(--bg);color:#fff;text-align:center;padding:.38rem 1rem;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}header{height:92px;max-width:var(--max);margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex}.brand img{width:164px;height:58px;object-fit:contain}.menu{display:none;font:inherit}nav{display:flex;align-items:center;gap:1.8rem;font-weight:650}nav a{position:relative}nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:0;bottom:-.35rem;height:1px;background:var(--primary);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.nav-cta,.button{border:1px solid var(--gold);border-radius:999px}.nav-cta{padding:.62rem 1rem}.nav a:hover:after{transform:scaleX(1)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:#966b2f;font-weight:800}.lead{font-size:clamp(1.07rem,1.6vw,1.25rem);max-width:620px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.76rem 1.25rem;font-weight:750;letter-spacing:.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.button:hover{transform:translateY(-2px);box-shadow:0 9px 25px rgb(36 15 29 / .22)}.primary{background:linear-gradient(120deg,var(--primary),#d54487);color:#fff;border-color:transparent}.secondary{background:transparent;color:var(--primary-dark);border-color:var(--primary)}.ghost{color:#fff;border-color:rgb(255 255 255 / .58)}.hero{min-height:710px;color:#fff;background:radial-gradient(circle at 82% 16%,color-mix(in srgb,var(--rose) 55%,transparent),transparent 26%),radial-gradient(circle at 18% 86%,color-mix(in srgb,var(--gold) 22%,transparent),transparent 25%),linear-gradient(120deg,var(--hero-a),var(--hero-b));display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:3rem;align-items:center;padding:74px max(28px,calc((100vw - var(--max))/2));position:relative;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:url('../img/nebula.webp') center/cover;opacity:var(--glow);mix-blend-mode:screen;z-index:-2}.hero-atmosphere{position:absolute;width:50vw;aspect-ratio:1;border-radius:50%;right:-19vw;top:-25vw;background:radial-gradient(circle,color-mix(in srgb,var(--gold) 35%,transparent),transparent 64%);filter:blur(10px);opacity:.8;z-index:-1;animation:drift 18s ease-in-out infinite alternate}.hero-copy{max-width:650px}.hero .eyebrow{color:var(--gold-light)}.hero .lead{color:#f2e7ed}.actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}.hero-art{justify-self:end;width:min(440px,100%);position:relative}.hero-art img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:220px 220px 28px 28px;box-shadow:0 35px 90px #080509}.moon{position:absolute;right:-28px;top:-48px;color:var(--gold-light);font:7rem Georgia;transform:rotate(15deg);text-shadow:0 0 35px color-mix(in srgb,var(--gold) 55%,transparent)}.intro{max-width:850px;margin:auto;padding:112px 28px 42px;text-align:center}.cards,.product-showcase,.gallery-strip,.faq-teaser,.page-intro,.faq-page,.gallery-page,.legal-page{max-width:var(--max);margin-inline:auto}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding:0 28px 112px}.cards article,.product-grid article,.gallery-page figure{overflow:hidden;background:#fff;border:1px solid rgb(95 49 72 / .09);border-radius:var(--radius);box-shadow:var(--shadow)}.cards article{transition:transform .2s ease,box-shadow .2s ease}.cards article:hover{transform:translateY(-5px);box-shadow:0 25px 80px rgb(47 15 37 / .2)}.cards img{width:100%;height:340px;object-fit:cover;display:block}.cards article>div{padding:1.7rem}.cards span,.cards a{color:#966b2f;text-transform:uppercase;letter-spacing:.09em;font-size:.73rem;font-weight:800}.cards h3{color:var(--text);text-transform:none;letter-spacing:-.02em}.steps{background:linear-gradient(125deg,#1c0e1b,#48213a);color:#fff;padding:100px max(28px,calc((100vw - var(--max))/2));position:relative;overflow:hidden}.steps:after{content:"";position:absolute;inset:0;background:url('../img/nebula.webp') center/cover;opacity:.14;pointer-events:none}.steps>*{position:relative}.steps .eyebrow{color:var(--gold-light)}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3.2rem;border-top:1px solid rgb(255 255 255 / .24)}.step-grid>div{padding:1.7rem 1.35rem;border-right:1px solid rgb(255 255 255 / .24)}.step-grid b{color:var(--gold-light);font:2.35rem Georgia}.step-grid p{color:#e3d2da}.gallery-strip{padding:110px 28px;text-align:center}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.7rem 0}.gallery-grid img,.gallery-page img{width:100%;aspect-ratio:1/1;display:block;object-fit:cover;border-radius:16px}.faq-teaser{max-width:850px;padding:100px 28px}.faq-page{padding:10px 28px 110px;max-width:850px}.faq-page details,.faq-teaser details{padding:1.2rem 0;border-bottom:1px solid var(--line)}summary{font:650 1.18rem Georgia;cursor:pointer}.statement{position:relative;overflow:hidden;text-align:center;padding:130px 28px;background:linear-gradient(120deg,#170d18,#3d1833);color:#fff}.statement:before{content:"";position:absolute;inset:0;background:url('../img/nebula.webp') center/cover;opacity:.28}.statement-inner{position:relative;max-width:780px;margin:auto}.statement .eyebrow{color:var(--gold-light)}.statement-inner>p:not(.eyebrow){color:#f1e4eb;font-size:1.1rem}.page-intro,.legal-page{max-width:900px;padding:100px 28px 45px}.page-intro>p:last-child{max-width:680px;font-size:1.1rem}.gallery-page{padding:20px 28px 110px;grid-template-columns:repeat(3,1fr);gap:1.2rem}.gallery-page figure{margin:0}.gallery-page figcaption{padding:.8rem}.empty-state{max-width:640px;padding:1.3rem 1.5rem;background:var(--surface-alt);border-radius:14px;color:var(--muted)}.message{max-width:var(--max);margin:1rem auto;padding:1rem 1.2rem;border-left:4px solid var(--primary);background:var(--surface-alt)}.idea{max-width:var(--max);margin:auto;padding:105px 28px;display:grid;grid-template-columns:.8fr 1.2fr;gap:5rem}.idea form,.thanks form{display:grid;gap:1rem;background:#fff;padding:2rem;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--radius)}.idea label,.thanks label{display:grid;gap:.35rem;font-weight:700}.idea input,.idea select,.idea textarea,.thanks input,.thanks textarea{width:100%;padding:.84rem .95rem;border:1px solid #cfc0c2;border-radius:10px;background:#fff;font:inherit;color:var(--text)}.idea textarea,.thanks textarea{min-height:140px;resize:vertical}.idea .check,.thanks .check{display:flex;gap:.7rem;align-items:flex-start;font-weight:400;font-size:.9rem}.idea .check input,.thanks .check input{width:auto;margin-top:.35rem}.thanks{min-height:72vh;padding:105px max(20px,calc((100vw - 900px)/2));background:radial-gradient(circle at 70% 10%,#824961,transparent 24%),url('../img/nebula.webp') center/cover,#1c1019;color:#fff}.thumbs{display:flex;gap:.6rem;margin-top:1rem;overflow:auto}.thumbs img{width:88px;height:88px;object-fit:cover;border-radius:10px}.badge{display:inline-block;background:var(--primary-dark);color:#fff;padding:.22rem .56rem;border-radius:999px;font-size:.72rem;margin-right:.35rem}footer{background:#130c13;color:#e6d7df;text-align:center;padding:65px 28px}footer img{width:185px}footer p{max-width:560px;margin:1rem auto}footer div{display:flex;justify-content:center;gap:1.6rem;margin:2rem}footer small{color:#b8a0ab}@keyframes drift{to{transform:translate(-5%,8%) scale(1.08)}}
@media(max-width:800px){header{height:72px;padding:0 18px}.brand img{width:124px;height:48px}.menu{display:block;color:var(--text);background:transparent;border:1px solid var(--gold);border-radius:999px;padding:.52rem .82rem}nav{display:none;position:absolute;z-index:10;top:102px;left:0;right:0;background:#fff;padding:1.2rem 1.4rem;flex-direction:column;align-items:stretch;gap:1rem;border-bottom:1px solid var(--line);box-shadow:0 20px 35px rgb(32 13 25 / .16)}nav.open{display:flex}.nav-cta{text-align:center}.hero{min-height:auto;grid-template-columns:1fr;padding:60px 20px 72px;gap:2rem}.hero-art{justify-self:center;margin-top:1rem;width:min(370px,88%)}.moon{right:-20px;top:-34px;font-size:5.8rem}.actions{flex-direction:column}.button{width:100%}.intro{padding:75px 20px 35px}.cards{grid-template-columns:1fr;padding:0 20px 78px}.cards img{height:265px}.steps{padding:74px 20px}.step-grid{grid-template-columns:1fr 1fr;margin-top:2rem}.step-grid>div{border-bottom:1px solid rgb(255 255 255 / .24)}.gallery-strip,.faq-teaser{padding:75px 20px}.gallery-grid,.gallery-page{grid-template-columns:repeat(2,1fr)}.gallery-page{padding:20px 20px 75px}.page-intro,.legal-page{padding:72px 20px 35px}.idea{grid-template-columns:1fr;gap:2rem;padding:75px 20px}.idea form,.thanks form{padding:1.25rem}.thanks{padding:75px 20px}footer{padding:54px 20px}footer div{flex-direction:column;gap:.6rem}}
@media(max-width:430px){h1{font-size:3.15rem}.step-grid{grid-template-columns:1fr}.gallery-grid,.gallery-page{grid-template-columns:1fr}.hero-art{width:92%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/* The seasonal layer is deliberately above the static backdrop but below content. */
.error-page,.error-page main,.error-page .statement{min-height:100vh}.error-page .statement{display:grid;place-content:center}
.hero-atmosphere{z-index:0;pointer-events:none}.hero-copy,.hero-art{z-index:1}
/* Phase 6: image-led inspiration, retaining shared seasonal tokens. */
.page-intro.compact{padding-block:56px 30px}.gallery-strip{padding-block:72px}.gallery-grid,.gallery-page{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.gallery-featured{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:26px}.gallery-card{margin:0;position:relative;overflow:hidden;border-radius:18px;background:var(--color-surface,#241722);box-shadow:0 12px 32px rgba(0,0,0,.18)}.gallery-card img,.gallery-page img{width:100%;height:100%;min-height:210px;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:0;transition:transform .45s ease}.gallery-card:hover img{transform:scale(1.025)}.gallery-card figcaption{position:absolute;inset:auto 0 0;padding:42px 16px 15px;background:linear-gradient(transparent,rgba(20,9,20,.88));color:#fff;display:grid;gap:3px}.gallery-card figcaption strong{font-size:.96rem}.gallery-card figcaption span{font-size:.84rem;color:#f3dce7}.idea-callout{max-width:760px;margin:0 auto 100px;padding:48px;border:1px solid color-mix(in srgb,var(--color-gold,#d7a85d) 48%,transparent);border-radius:24px;text-align:center;background:linear-gradient(145deg,rgba(94,31,71,.45),rgba(24,16,30,.72))}.idea-callout p{max-width:580px;margin-inline:auto}.theme-spring .hero-atmosphere,.theme-easter .hero-atmosphere,.theme-summer .hero-atmosphere{filter:saturate(1.12) brightness(1.12)}.theme-autumn .hero-atmosphere,.theme-halloween .hero-atmosphere,.theme-christmas .hero-atmosphere,.theme-valentine .hero-atmosphere{filter:saturate(1.22) contrast(1.06)}
@media(max-width:720px){.gallery-grid,.gallery-page,.gallery-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-card img,.gallery-page img{min-height:150px}.gallery-card figcaption{padding:34px 11px 10px}.gallery-card figcaption strong{font-size:.82rem}.gallery-card figcaption span{display:none}.gallery-strip{padding-block:54px}.idea-callout{margin:0 18px 62px;padding:34px 22px}}
.gallery-page{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.gallery-page .gallery-card img{min-height:150px}.gallery-featured{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gallery-featured .gallery-card img{min-height:175px}.idea-options{display:grid;gap:13px;margin-top:30px}.idea-option{display:grid;gap:2px;padding:18px 20px;border:1px solid var(--gold);border-radius:14px;background:linear-gradient(130deg,#241020,#4b233b);color:#fff}.idea-option span{color:#f0dce5;font-size:.9rem}.inquiry-panel{border:1px solid var(--gold);border-radius:18px;background:linear-gradient(145deg,#1a0d1a,#442038);padding:20px;color:#fff}.inquiry-panel summary{cursor:pointer;color:var(--gold-light);margin-bottom:18px}.review-grid{max-width:900px;margin:0 auto 80px;padding:0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-card{padding:24px;border:1px solid rgba(221,170,189,.28);border-radius:18px;background:rgba(35,20,37,.74)}.review-grid .empty-state{grid-column:1/-1;text-align:center;margin:0 auto;padding:58px 42px;background:linear-gradient(145deg,#f9eef2,#f2dfe7)}.review-form{max-width:680px;margin:26px auto 0;display:grid;gap:16px;text-align:left;background:#fff;color:var(--text);padding:30px;border-radius:18px;box-shadow:var(--shadow)}.review-form label{display:grid;gap:7px;font-weight:700}.review-form input,.review-form select,.review-form textarea{width:100%;box-sizing:border-box;padding:13px;border:1px solid #c9b5bf;border-radius:10px;font:inherit}.review-form textarea{min-height:180px}.review-form .check{display:flex;gap:10px;font-weight:400}.review-form .check input{width:auto}.review-form button{width:100%}@media(max-width:720px){.gallery-page,.gallery-featured{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-page .gallery-card img,.gallery-featured .gallery-card img{min-height:132px}.inquiry-panel{padding:14px}.review-grid{grid-template-columns:1fr;padding:0 18px}.review-grid .empty-state{padding:40px 22px}.review-form{padding:22px 16px}}
