/* Wedding Studio — editorial design system */
:root{--ink:#263d35;--muted:#737a70;--paper:#fbf9f3;--gold:#a88953;--line:#e4e6dc;--accent:#294f40}
body{background:var(--paper)!important;color:var(--ink)!important;margin-bottom:0;font-family:'Montserrat',sans-serif;font-size:14px}h1,h2,h3,.serif{font-family:'Playfair Display',Georgia,serif}a{color:var(--accent)}.portal-navbar{box-shadow:none!important;background:var(--paper)!important;border-color:var(--line)!important}.portal-brand{color:var(--ink)!important;letter-spacing:.03em!important;font-family:'Playfair Display',serif!important}.brand-mark{border:1px solid #a8895370;border-radius:50%;width:35px;height:35px;display:inline-grid;place-items:center;font-family:Georgia,serif;font-style:italic;color:var(--gold)}.navbar .nav-link{font-size:12px!important;color:var(--ink)!important}.navbar .btn-primary,.btn-studio{background:var(--accent)!important;border-color:var(--accent)!important;color:white!important;border-radius:6px!important;padding:13px 23px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px}.btn-quiet{display:inline-flex;align-items:center;gap:12px;border:1px solid #cbd2c5;padding:12px 22px;border-radius:6px;color:var(--ink);text-decoration:none;font-size:12px;background:transparent}.btn-studio:hover{background:#163d2c!important;color:white;transform:translateY(-1px)}.portal-footer{background:#f0f2e9!important;border-color:var(--line)!important;margin-top:0!important}.eyebrow{text-transform:uppercase;letter-spacing:2.8px;font-size:10px;font-weight:600;color:#8d794f}.editorial-hero{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;min-height:650px;padding-top:45px;padding-bottom:55px}.editorial-hero h1{font-size:clamp(43px,4.5vw,67px);line-height:1.1;letter-spacing:-2px;margin:24px 0}.editorial-hero h1 em{color:#879777;font-weight:400}.hero-copy{color:var(--muted);line-height:1.9;max-width:430px;font-size:14px}.hero-actions{display:flex;gap:12px;margin:28px 0;flex-wrap:wrap}.hero-note{display:flex;gap:20px;font-size:10px;color:var(--muted);margin-top:24px}.hero-art{height:535px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse,#e8ebdc 0,transparent 68%)}.hero-art:before{content:'';width:420px;height:420px;border:1px solid #dce1cf;border-radius:50%;position:absolute}.invitation-art{position:relative;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:2/3;color:#526047;background:#f2eee0 url('/images/palace-garden.png') center/cover;font-family:'Playfair Display',Georgia,serif}.invitation-art:after{content:'';position:absolute;inset:15px;border:1px solid #ad985e66;pointer-events:none}.invitation-art small{font-family:'Montserrat',sans-serif;font-size:8px;letter-spacing:2px}.invitation-art strong{font-weight:400;font-size:37px;line-height:1.3;z-index:1}.invitation-art em{color:#ad985e;font-size:28px}.invitation-art .card-date{margin-top:19px;font-size:9px;letter-spacing:2px}.hero-card-main{width:280px;transform:rotate(7deg);box-shadow:0 25px 65px #33422b26;z-index:2;animation:card-drift 8s ease-in-out infinite}.hero-card-back{position:absolute;width:230px;height:350px;background:#25473b;color:#ebd7aa;transform:rotate(-13deg) translate(-120px,-5px);border:9px solid #25473b;box-shadow:0 15px 40px #293a2422;display:grid;place-content:center;text-align:center;gap:16px;font-family:Georgia,serif}.hero-card-back:after{content:'';position:absolute;inset:12px;border:1px solid #aa986d;border-radius:100px 100px 0 0}.hero-card-back strong{font-size:35px;font-weight:400}.floating-caption{position:absolute;bottom:15px;left:25px;z-index:3;background:white;padding:16px 20px;border-radius:9px;box-shadow:0 8px 35px #29432c12;font-size:11px}.floating-caption b{display:block;margin-bottom:4px}.floating-caption span{font-size:10px;color:var(--muted)}.hero-spark{position:absolute;right:22px;top:42px;font-size:45px;color:var(--gold)}.feature-strip{border-block:1px solid var(--line);padding:22px 0;display:flex;justify-content:center;gap:55px;font-size:11px;color:#687462;flex-wrap:wrap}.collection{padding:85px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-heading h2{font-size:36px;margin:12px 0}.section-heading p{color:var(--muted);font-size:12px;margin-bottom:0}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.filter-row button{background:transparent;border:1px solid var(--line);border-radius:30px;padding:9px 18px;font-size:11px;color:#677362}.filter-row button.active{background:var(--accent);color:white;border-color:var(--accent)}.template-search{border:1px solid var(--line);background:white;padding:12px 16px;border-radius:7px;max-width:280px;width:100%;font-size:12px}.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.design-card[hidden]{display:none}.design-preview{padding:20px 32px;background:#f0ede5;border-radius:9px;position:relative;overflow:hidden;transition:background .3s}.design-preview .invitation-art{width:100%;box-shadow:0 8px 17px #29352a1a;transition:transform .4s}.design-preview:hover .invitation-art{transform:translateY(-6px) rotate(-2deg)}.design-preview .invitation-art strong{font-size:25px}.design-preview .invitation-art small{font-size:6px}.design-preview .invitation-art .card-date{font-size:7px}.design-type{position:absolute;top:10px;left:10px;z-index:2;background:#ffffffed;border-radius:4px;padding:4px 7px;color:#627258;font-size:8px;letter-spacing:1px}.design-card h3{font-family:'Montserrat',sans-serif;font-size:12px;font-weight:600;margin:16px 0 6px}.design-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.design-actions{display:flex;gap:16px;margin-top:14px;font-size:10px}.design-actions a{color:var(--ink);text-underline-offset:4px}.art-royal{background:#163f35;color:#e4d2a6}.art-royal:after{border:1px solid #c9ab65;border-radius:100px 100px 0 0;inset:15px}.art-royal:before{content:'✧';font-size:50px;color:#b9a365;margin-bottom:16px}.art-modern{background:#f4efdf;color:#383d30;justify-content:flex-start;padding-top:35px}.art-modern:before{content:'&';font-size:100px;font-style:italic;color:#cfccb8;position:absolute;bottom:-20px;right:0}.art-modern strong{font-size:29px!important;text-transform:uppercase;line-height:1.4}.art-floral{background-color:#eadde0;background-blend-mode:soft-light;color:#815961}.art-festive{background-color:#e3be74;background-blend-mode:multiply;color:#743c25}.art-sapphire{background:#162a3c;color:#eee3cb}.art-sapphire:before{content:'✦   ·   ✧';font-size:24px;position:absolute;top:18%;color:#ccb98b}.film-section{background:#203d32;color:#f4efde;padding:75px 0;overflow:hidden}.film-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.film-section h2{font-size:44px;line-height:1.2;margin:20px 0}.film-section p{color:#b6c4b6;font-size:13px;line-height:1.9}.film-stage{position:relative;display:flex;justify-content:center;gap:15px;align-items:center;min-height:390px}.film-stage .invitation-art{width:210px;border-radius:100px 100px 4px 4px;box-shadow:0 20px 55px #0003;animation:card-drift 9s ease-in-out infinite}.film-stage .invitation-art:last-child{width:150px;transform:rotate(8deg);animation-delay:-4s}.film-section .btn-studio{background:#efe8d5!important;color:var(--ink)!important}.film-features{display:flex;gap:22px;margin:26px 0;font-size:10px;color:#d1d8c7}.steps-section{padding:85px 0}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:40px}.step-number{font-family:Georgia,serif;font-style:italic;color:#a99a75;font-size:35px}.steps-grid h3{font-size:21px;margin:14px 0}.steps-grid p{color:var(--muted);line-height:1.8;font-size:12px}.closing-note{text-align:center;padding:60px 20px;background:#eeefe5}.closing-note h2{font-size:34px;margin-bottom:22px}.studio-header{background:#203d32!important;border:0!important}.video-studio-container{background:var(--paper)!important}.ritual-templates-grid{display:flex!important;overflow-x:auto;gap:12px;padding:6px 2px 16px;scroll-snap-type:x mandatory}.ritual-card{min-width:215px;max-width:215px;scroll-snap-align:start;border-radius:8px!important;box-shadow:none!important}.ritual-card.active{border-color:#567459!important;background:#eef2e8!important}.ritual-tags-wrapper,.ritual-card-motifs{display:none!important}.ritual-card-title{font-size:12px!important}.studio-toolbox{padding:24px;background:#f0f2e9;border:1px solid #dce2d2;border-radius:10px;margin:0 0 24px}.studio-toolbox h2{font-size:25px;margin:8px 0 16px}.motion-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.motion-choice{border:1px solid #d4d9cc;border-radius:7px;background:#fff;padding:13px 10px;text-align:left;font-size:11px;color:#344c3c}.motion-choice small{display:block;color:#7b8274;margin-top:5px;font-size:9px}.motion-choice[aria-pressed=true]{border-color:#2d503b;box-shadow:0 0 0 1px #2d503b;background:#e6ecdf}.studio-tool-row{display:flex;align-items:center;gap:14px;margin-top:18px;flex-wrap:wrap;font-size:11px}.studio-tool-row select{padding:7px;border:1px solid #ccd4c2;border-radius:5px;background:white}.backdrop-panel{border-top:1px solid #d6ddcd;margin-top:20px;padding-top:16px}.backdrop-panel summary{cursor:pointer;font-size:12px;font-weight:600}.backdrop-panel textarea{width:100%;border:1px solid #cbd5c3;border-radius:6px;margin:12px 0;padding:12px;min-height:80px;font-size:12px}.backdrop-panel p{font-size:11px;color:#687662;margin:12px 0}.backdrop-panel video{max-width:220px;max-height:300px;display:block;margin-top:12px}.phone-mockup-frame{border-radius:12px!important}.phone-top-notch{display:none!important}.scene-pills{flex-wrap:wrap}.empty-state{padding:30px;text-align:center;color:var(--muted)}:focus-visible{outline:3px solid #a88953!important;outline-offset:4px}.skip-link{position:absolute;left:15px;top:-70px;z-index:10000;padding:12px;background:#fff}.skip-link:focus{top:12px}
@keyframes card-drift{0%,100%{translate:0 0}50%{translate:0 -12px}}
@media(max-width:991px){.editorial-hero{gap:20px;min-height:550px}.hero-art{height:450px}.hero-card-main{width:235px}.hero-card-back{width:185px;height:300px;transform:rotate(-13deg) translate(-70px,-5px)}.collection-grid{grid-template-columns:repeat(2,1fr)}.film-grid{gap:30px}.motion-choices{grid-template-columns:repeat(2,1fr)}.feature-strip{gap:20px}.hero-art:before{width:310px;height:310px}}
@media(max-width:600px){.editorial-hero{grid-template-columns:1fr;padding-top:42px;text-align:center}.editorial-hero h1{font-size:44px}.hero-copy{margin:auto}.hero-actions,.hero-note{justify-content:center}.hero-art{height:420px}.hero-card-main{width:230px}.floating-caption{left:10px;bottom:0}.collection{padding:50px 0}.section-heading{align-items:start;flex-direction:column}.section-heading h2{font-size:29px}.collection-grid{gap:22px 12px}.design-preview{padding:15px}.design-preview .invitation-art strong{font-size:21px}.film-grid{grid-template-columns:1fr}.film-section{padding:45px 0}.film-section h2{font-size:35px}.steps-grid{grid-template-columns:1fr;gap:25px}.steps-section{padding:50px 0}.hero-spark{right:15px}.feature-strip{font-size:9px;gap:14px}.studio-toolbox{padding:16px}.portal-brand{font-size:1rem!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Device-local backdrop composer */
.backdrop-panel summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.backdrop-free{font-size:9px;font-weight:500;background:#dce9d4;color:#385337;border-radius:20px;padding:5px 10px}.backdrop-workspace{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:24px;align-items:start;margin-top:18px}.backdrop-workspace:has(.backdrop-preview[hidden]){grid-template-columns:1fr}.backdrop-workspace label{font-size:11px;font-weight:600;display:block}.backdrop-panel textarea{margin:7px 0 10px;resize:vertical}.backdrop-presets,.backdrop-actions{display:flex;flex-wrap:wrap;gap:7px}.backdrop-presets button{border:1px solid #bfcdb8;border-radius:20px;background:#fffdf7;color:#405a40;padding:6px 12px;font-size:10px}.backdrop-presets button:hover{background:#dfe8d8}.backdrop-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:17px 0}.backdrop-options select{display:block;width:100%;margin-top:6px;background:#fffdf7;border:1px solid #c5d0bd;border-radius:5px;padding:9px;font-size:11px;color:#334835}.backdrop-actions button{font-size:10px;padding:11px 13px}.backdrop-panel [hidden]{display:none!important}.backdrop-preview{margin:0}.backdrop-preview canvas{width:100%;height:auto;border-radius:80px 80px 6px 6px;box-shadow:0 8px 20px #30452a18}.backdrop-preview figcaption{font-size:9px;line-height:1.6;color:#687662;text-align:center;margin-top:10px}#backdropStatus{padding:10px 13px;border-left:2px solid #839975;background:#e5ecdd}.backdrop-actions button:disabled{opacity:.5;cursor:wait}
@media(max-width:600px){.backdrop-workspace{grid-template-columns:minmax(0,1fr)}.backdrop-preview{max-width:180px;margin:auto}.backdrop-options{grid-template-columns:1fr 1fr}}
