*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--paper: #FAF6EF;--paper-2: #F2ECE1;--card: #FFFFFF;--ink: #1C1915;--ink-2: #57503F;--ink-3: #8A8272;--line: #E4DCCC;--accent: #E8630A;--accent-dk: #C24E00;--accent-soft:#FBEADC;--pine: #0E5C45;--gold: #FBBC04;--danger: #C0392B;--radius: 14px;--shadow: 0 1px 2px rgba(28,25,21,.06), 0 6px 20px rgba(28,25,21,.07);--shadow-lg: 0 2px 4px rgba(28,25,21,.08), 0 16px 44px rgba(28,25,21,.13);--font-disp: "Fraunces", Georgia, serif;--font-ui: "Inter", system-ui, sans-serif}html{scroll-behavior:smooth}body{font-family:var(--font-ui);background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:var(--accent-soft)}h1,h2,h3{font-family:var(--font-disp);font-weight:600;line-height:1.12;letter-spacing:-.01em}a{color:inherit}button{font-family:var(--font-ui);cursor:pointer}canvas{display:block}.wrap{max-width:1160px;margin:0 auto;padding:0 24px}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header .wrap{display:flex;align-items:center;gap:28px;height:64px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-disp);font-size:21px;font-weight:700;text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--ink);display:grid;place-items:center;color:var(--paper);flex-shrink:0}.brand small{font-family:var(--font-ui);font-weight:500;font-size:11px;color:var(--ink-3);display:block;line-height:1;margin-top:2px}.site-nav{display:flex;gap:22px;margin-left:auto;align-items:center}.site-nav a{text-decoration:none;font-size:14.5px;font-weight:500;color:var(--ink-2)}.site-nav a:hover{color:var(--ink)}.site-nav a.btn-primary,.site-nav a.btn-primary:hover{color:var(--paper)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-weight:600;font-size:15px;padding:12px 24px;border:none;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:#000;transform:translateY(-1px);box-shadow:var(--shadow)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-dk);transform:translateY(-1px);box-shadow:var(--shadow)}.btn-ghost{background:transparent;color:var(--ink-2);border:1.5px solid var(--line)}.btn-ghost:hover{border-color:var(--ink-3);color:var(--ink)}.btn-lg{padding:15px 30px;font-size:16px}.btn-sm{padding:8px 16px;font-size:13.5px}.btn[disabled]{opacity:.5;cursor:not-allowed;transform:none!important}.hero{padding:76px 0 60px;overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.hero h1{font-size:clamp(38px,5vw,58px)}.hero h1 em{font-style:italic;color:var(--accent)}.hero-sub{margin:20px 0 30px;font-size:18px;color:var(--ink-2);max-width:46ch}.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;align-items:center}.hero-note{font-size:13.5px;color:var(--ink-3);margin-top:14px}.hero-note b{color:var(--pine)}.hero-stage{position:relative;display:grid;place-items:center}.hero-stage:before{content:"";position:absolute;top:8%;right:-6%;bottom:0;left:-6%;background:radial-gradient(60% 55% at 50% 45%,var(--accent-soft),transparent 70%);z-index:0}.hero-sign{position:relative;z-index:1;max-width:320px;width:100%;filter:drop-shadow(0 24px 40px rgba(28,25,21,.22));transition:opacity .45s ease}.hero-sign canvas{width:100%;height:auto}.hero-caption{position:relative;z-index:1;margin-top:18px;font-size:13px;color:var(--ink-3);display:flex;gap:8px;align-items:center}.hero-caption .dot{width:7px;height:7px;border-radius:50%;background:var(--accent)}.section{padding:72px 0}.section.alt{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.kicker{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.section h2{font-size:clamp(28px,3.4vw,40px);max-width:24ch}.section-sub{color:var(--ink-2);margin-top:14px;max-width:60ch;font-size:16.5px}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:44px}.feature-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow)}.feature-card .f-icon{width:42px;height:42px;border-radius:11px;background:var(--accent-soft);color:var(--accent-dk);display:grid;place-items:center;margin-bottom:16px}.feature-card h3{font-size:19px;margin-bottom:8px}.feature-card p{font-size:14.5px;color:var(--ink-2)}.steps-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:44px;counter-reset:step}.step-card{position:relative;padding:26px 24px;border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.step-card:before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--font-disp);font-size:40px;font-weight:700;color:var(--accent-soft);-webkit-text-stroke:1.2px var(--accent);display:block;margin-bottom:10px}.step-card h3{font-size:18px;margin-bottom:8px}.step-card p{font-size:14.5px;color:var(--ink-2)}.tpl-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:44px}.tpl-tile{text-decoration:none;min-width:0}.tpl-tile .tpl-canvas-wrap{border-radius:12px;overflow:hidden;border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);transition:transform .15s ease,box-shadow .15s ease;display:grid;place-items:center;aspect-ratio:3/4;padding:10px;min-width:0}.tpl-tile:hover .tpl-canvas-wrap{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.tpl-tile canvas{max-width:100%;max-height:100%;width:auto;height:auto}.tpl-tile .tpl-name{font-weight:600;font-size:14px;margin-top:10px}.tpl-tile .tpl-tag{font-size:12.5px;color:var(--ink-3)}.pricing-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:44px;align-items:stretch}.price-card{background:var(--card);border:1.5px solid var(--line);border-radius:18px;padding:30px 28px;display:flex;flex-direction:column;box-shadow:var(--shadow);position:relative}.price-card.featured{border-color:var(--accent);box-shadow:var(--shadow-lg)}.price-flag{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;font-size:12px;font-weight:700;padding:4px 14px;border-radius:999px;letter-spacing:.04em;white-space:nowrap}.price-card h3{font-size:20px}.price-desc{font-size:13.5px;color:var(--ink-3);margin-top:4px}.price-amount{font-family:var(--font-disp);font-size:44px;font-weight:700;margin:18px 0 2px}.price-amount small{font-size:15px;font-family:var(--font-ui);font-weight:500;color:var(--ink-3)}.price-gst{font-size:12px;color:var(--ink-3);margin-bottom:18px}.price-feats{list-style:none;margin:0 0 26px;display:grid;gap:9px}.price-feats li{font-size:14px;color:var(--ink-2);padding-left:24px;position:relative}.price-feats li:before{content:"✓";position:absolute;left:2px;color:var(--pine);font-weight:700}.price-card .btn{margin-top:auto}.faq-list{margin-top:40px;max-width:760px}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:18px 4px;font-weight:600;font-size:16px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:22px;color:var(--ink-3);transition:transform .15s}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-item p{padding:0 4px 18px;color:var(--ink-2);font-size:15px;max-width:65ch}.site-footer{border-top:1px solid var(--line);padding:36px 0 44px;margin-top:40px}.site-footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.site-footer p{font-size:13.5px;color:var(--ink-3)}.site-footer a{color:var(--ink-2)}.designer-body{height:100vh;display:flex;flex-direction:column;overflow:hidden}.designer-topbar{height:60px;flex-shrink:0;display:flex;align-items:center;gap:18px;padding:0 20px;background:var(--card);border-bottom:1px solid var(--line);z-index:20}.designer-topbar .brand{font-size:18px}.topbar-status{font-size:13px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.designer-main{flex:1;display:flex;min-height:0}.panel{width:356px;flex-shrink:0;overflow-y:auto;background:var(--card);border-right:1px solid var(--line);padding:18px 18px 60px;scrollbar-width:thin}.ctl-section{border:1px solid var(--line);border-radius:12px;margin-bottom:12px;background:var(--card);overflow:hidden}.ctl-section>summary{list-style:none;cursor:pointer;padding:13px 16px;font-weight:600;font-size:14px;display:flex;align-items:center;gap:10px;-webkit-user-select:none;user-select:none}.ctl-section>summary::-webkit-details-marker{display:none}.ctl-section>summary .chev{margin-left:auto;transition:transform .15s;color:var(--ink-3)}.ctl-section[open]>summary .chev{transform:rotate(90deg)}.ctl-section>summary .sec-icon{color:var(--accent-dk);display:grid;place-items:center}.ctl-body{padding:4px 16px 16px}.ctl-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin:14px 0 7px}.ctl-label:first-child{margin-top:4px}.text-input,.select-input{width:100%;padding:10px 12px;border:1.5px solid var(--line);border-radius:9px;font-family:var(--font-ui);font-size:14px;background:var(--paper);color:var(--ink);outline:none;transition:border-color .12s}.text-input:focus,.select-input:focus{border-color:var(--accent);background:#fff}.swatch-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.swatch{aspect-ratio:1;border-radius:8px;border:2px solid rgba(0,0,0,.08);cursor:pointer;transition:transform .1s;padding:0}.swatch:hover{transform:scale(1.12)}.swatch.selected{outline:2.5px solid var(--accent);outline-offset:2px}.seg-row{display:flex;background:var(--paper);border:1.5px solid var(--line);border-radius:9px;padding:3px;gap:3px}.seg-btn{flex:1;padding:8px 6px;border:none;background:transparent;border-radius:7px;font-size:13px;font-weight:600;color:var(--ink-2)}.seg-btn.active{background:var(--ink);color:var(--paper)}.chip-row{display:flex;flex-wrap:wrap;gap:7px}.chip{padding:7px 12px;border-radius:999px;border:1.5px solid var(--line);background:var(--card);font-size:12.5px;font-weight:500;color:var(--ink-2);text-align:left}.chip:hover{border-color:var(--ink-3)}.chip.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.color-row{display:flex;align-items:center;gap:10px}.color-input{width:44px;height:34px;padding:2px;border:1.5px solid var(--line);border-radius:8px;background:var(--card);cursor:pointer}.color-row span{font-size:13px;color:var(--ink-2)}.range-row{display:flex;align-items:center;gap:12px}.range-row input[type=range]{flex:1;accent-color:var(--accent)}.range-row output{font-size:12.5px;color:var(--ink-3);min-width:40px;text-align:right}.tpl-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tpl-chip{border:1.5px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper);cursor:pointer;padding:0;transition:border-color .12s,transform .12s;text-align:center;min-width:0}.tpl-chip .tc-wrap,.tpl-strip,.tpl-gallery,.shape-grid,.shape-cell{min-width:0}.tpl-chip canvas,.tpl-tile canvas{max-width:100%}.hero-stage,.hero-sign{min-width:0}.tpl-chip:hover{transform:translateY(-2px)}.tpl-chip.active{border-color:var(--accent);outline:1.5px solid var(--accent)}.tpl-chip .tc-wrap{aspect-ratio:4/3;display:grid;place-items:center;padding:8px}.tpl-chip canvas{max-width:100%;max-height:100%;width:auto;height:auto}.tpl-chip .tc-name{font-size:11.5px;font-weight:600;padding:5px 4px 7px;color:var(--ink-2)}.shape-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shape-cell{border:1.5px solid var(--line);border-radius:10px;background:var(--card);padding:9px 4px 6px;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--ink-2)}.shape-cell svg{width:34px;height:34px}.shape-cell span{font-size:10.5px;font-weight:600}.shape-cell:hover{border-color:var(--ink-3)}.shape-cell.active{border-color:var(--accent);color:var(--accent-dk);background:var(--accent-soft)}.mat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mat-chip{border:1.5px solid var(--line);border-radius:10px;background:var(--card);padding:8px 4px 6px;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer}.mat-chip:hover{border-color:var(--ink-3)}.mat-chip.selected{border-color:var(--accent);outline:1.5px solid var(--accent)}.mat-cap{width:100%;height:26px;border-radius:6px;border:1px solid rgba(0,0,0,.12);display:grid;place-items:center;position:relative;overflow:hidden}.mat-cap.brushed:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.14) 0 1px,transparent 1px 2px,rgba(0,0,0,.05) 2px 3px,transparent 3px 4px),linear-gradient(115deg,transparent 25%,rgba(255,255,255,.28) 38%,transparent 50%,rgba(0,0,0,.07) 65%,rgba(255,255,255,.14) 80%,transparent 92%)}.sign3d-holder{width:100%;max-width:640px;aspect-ratio:1;border-radius:14px;overflow:hidden;background:radial-gradient(80% 70% at 50% 35%,#FFFDF8,var(--paper-2));border:1px solid var(--line);box-shadow:var(--shadow)}.sign3d-holder canvas{cursor:grab}.sign3d-holder canvas:active{cursor:grabbing}.sign3d-loading{display:grid;place-items:center;height:100%;color:var(--ink-3);font-size:13px}.mat-core{width:55%;height:8px;border-radius:3px}.mat-name{font-size:9.5px;font-weight:600;color:var(--ink-2);text-align:center;line-height:1.2}.el-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--line)}.el-row:last-child{border-bottom:none}.el-row span{font-size:13.5px}.el-toggle{border:1.5px solid var(--line);background:var(--card);border-radius:999px;font-size:11.5px;font-weight:600;padding:4px 12px;color:var(--ink-2)}.el-toggle.el-off{background:var(--paper-2);color:var(--ink-3)}.biz-search-wrap{position:relative}.biz-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:30;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-lg);max-height:260px;overflow-y:auto}.biz-results:empty{display:none}.biz-item{padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--paper-2)}.biz-item:last-child{border-bottom:none}.biz-item:hover{background:var(--paper)}.biz-item strong{display:block;font-size:14px}.biz-item span{font-size:12.5px;color:var(--ink-3)}.biz-selected{margin-top:10px;padding:12px 14px;background:#edf7f2;border:1px solid #BFE3D2;border-radius:10px;font-size:13.5px;display:flex;gap:10px;align-items:flex-start}.biz-selected .ok{color:var(--pine);font-weight:700;flex-shrink:0}.biz-selected small{color:var(--ink-3);display:block;word-break:break-all}.hint{font-size:12.5px;color:var(--ink-3);margin-top:8px}.hint a{color:var(--accent-dk)}.scan-pill{display:flex;gap:9px;align-items:flex-start;border-radius:10px;padding:10px 13px;font-size:12.5px;line-height:1.45;margin-top:12px}.scan-pill .si{flex-shrink:0;margin-top:1px}.scan-pill.ok{background:#edf7f2;color:var(--pine)}.scan-pill.warn{background:#fcf3de;color:#8a6100}.scan-pill.bad{background:#fbeae7;color:var(--danger)}.stage{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;overflow-y:auto;padding:26px 26px 40px;background:radial-gradient(circle at 1px 1px,rgba(28,25,21,.055) 1px,transparent 0) 0 0/22px 22px,var(--paper)}.stage-toolbar{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px 10px;box-shadow:var(--shadow);margin-bottom:18px;flex-wrap:wrap;justify-content:center}.stage-toolbar .tlabel{font-size:12.5px;font-weight:600;color:var(--ink-3);padding:0 8px}.align-btn{width:30px;height:30px;display:grid;place-items:center;border:none;background:transparent;border-radius:8px;color:var(--ink-2)}.align-btn:hover:not([disabled]){background:var(--paper-2)}.align-btn[disabled]{opacity:.35;cursor:default}.align-sep{width:1px;height:18px;background:var(--line);margin:0 4px}.sign-holder{position:relative;max-width:min(480px,100%);width:100%}.sign-holder canvas{width:100%;height:auto;border-radius:6px;box-shadow:0 18px 50px #1c191533;cursor:default}.drag-hint{text-align:center;font-size:12.5px;color:var(--ink-3);margin-top:14px}.stage-cta{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap;justify-content:center}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#1c191573;display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .18s ease}.modal-backdrop.open{opacity:1;pointer-events:auto}.modal{background:var(--paper);border-radius:20px;box-shadow:var(--shadow-lg);max-width:980px;width:100%;max-height:92vh;overflow-y:auto;padding:40px 36px 34px;position:relative;transform:translateY(10px);transition:transform .18s ease}.modal-backdrop.open .modal{transform:none}.modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--card);font-size:17px;color:var(--ink-2)}.modal h2{font-size:30px}.modal .section-sub{margin-top:8px}.modal .pricing-row{margin-top:30px}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%) translateY(20px);background:var(--ink);color:var(--paper);font-size:14px;padding:12px 22px;border-radius:999px;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:all .2s ease;z-index:200}.toast.show{opacity:1;transform:translate(-50%)}.center-page{min-height:100vh;display:flex;flex-direction:column}.center-main{flex:1;display:grid;place-items:center;padding:44px 18px}.big-card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-lg);padding:46px 40px;max-width:660px;width:100%;text-align:center}.big-card h1{font-size:30px;margin-bottom:8px}.big-card .sub{color:var(--ink-2);margin-bottom:26px}.spinner{width:42px;height:42px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1080px){.tpl-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:920px){.hero .wrap{grid-template-columns:1fr;gap:40px}.feature-grid,.steps-row,.pricing-row{grid-template-columns:1fr}.designer-main{flex-direction:column;overflow-y:auto}.designer-body{height:auto;overflow:auto}.panel{width:100%;border-right:none;border-bottom:1px solid var(--line);max-height:none}.stage{overflow:visible}}@media(max-width:640px){.tpl-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.site-nav a:not(.btn){display:none}.tpl-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.designer-topbar{gap:10px;padding:0 12px}.designer-topbar .topbar-status{display:none}.designer-topbar .brand span:not(.brand-mark){display:none}.designer-topbar{flex-wrap:wrap;height:auto;min-height:52px;padding:8px 12px;row-gap:6px}.topbar-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.topbar-actions .btn{padding:7px 10px;font-size:11.5px;white-space:nowrap}}.canvas-preview{margin:0 auto 26px;border-radius:10px;overflow:hidden;box-shadow:var(--shadow-lg);max-width:380px;line-height:0}.canvas-preview canvas{width:100%;height:auto}.dl-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}.tier-note{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:14px 18px;font-size:13.5px;color:var(--ink-2);margin:0 0 22px;text-align:left}.tier-note strong{color:var(--ink)}.divider{height:1px;background:var(--line);margin:24px 0}.small{font-size:13.5px;color:var(--ink-3)}.small a{color:var(--accent-dk)}
