@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap";@font-face{font-family:MME Butler SemiBold Stencil;src:url(/assets/Butler-Free-SBd-St-Dy0W1M4F.otf)format("opentype");font-style:normal;font-weight:600;font-display:block}@font-face{font-family:MME Book Antiqua;src:url(/assets/Book-Antiqua-BdrhX_Qd.ttf)format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:"MME Century 751 BT";src:url(/assets/Century-751-BT-Roman-BGQgxakB.ttf)format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:MME Spectral SC;src:url(/assets/Spectral-SC-Regular-GBI807Ye.ttf)format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:MME Stardos Stencil;src:url(/assets/Stardos-Stencil-Regular-CFuy_mKx.ttf)format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:MME Stardos Stencil;src:url(/assets/Stardos-Stencil-Bold-B7AY2gBP.ttf)format("truetype");font-style:normal;font-weight:700;font-display:block}:root{font-family:var(--brand-body,"DM Sans"), Arial, sans-serif;color:#18332a;font-synthesis:none;background:#f7f3ea}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:#18332a;background:#f7f3ea;min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--brand-display,"Playfair Display"), Georgia, serif;letter-spacing:-.025em;font-weight:500}h1{font-size:clamp(2.6rem,6vw,5.6rem);line-height:.98}h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.08}h3{font-size:1.45rem}.app-shell{min-height:100vh;overflow:hidden}.prototype-strip{color:#dce6dd;letter-spacing:.14em;text-align:center;text-transform:uppercase;background:#102e25;padding:8px 24px;font-size:.72rem}.site-header{z-index:10;background:#f7f3eaf5;border-bottom:1px solid #173f3224;justify-content:space-between;align-items:center;height:86px;padding:0 clamp(20px,5vw,76px);display:flex;position:relative}.wordmark{background:0 0;border:0;align-items:center;gap:12px;padding:0;font-family:Playfair Display,Georgia,serif;font-size:1.25rem;display:flex}button.wordmark{cursor:pointer}.wordmark-mark{color:#a07e40;letter-spacing:.08em;border:1px solid #a98b54;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-family:DM Sans,sans-serif;font-size:.65rem;display:inline-flex}nav{align-items:center;gap:clamp(16px,3vw,42px);display:flex}nav a,nav button{color:#24453a;cursor:pointer;background:0 0;border:0;padding:12px 0;font-size:.9rem;text-decoration:none}nav a:hover,nav button:hover{color:#a07e40}.basket-link{align-items:center;gap:8px;display:flex}.basket-link span{background:var(--brand-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:.72rem;display:inline-flex}.section{max-width:1480px;margin:0 auto;padding:110px clamp(20px,5vw,76px)}.eyebrow{color:#9a7e49;letter-spacing:.2em;text-transform:uppercase;margin-bottom:20px;font-size:.7rem;font-weight:600}.button{cursor:pointer;border:1px solid #0000;justify-content:center;min-height:52px;padding:15px 24px;text-decoration:none;transition:transform .2s,background .2s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-2px)}.button:disabled{cursor:not-allowed;opacity:.45}.button.primary{background:var(--brand-primary);color:#fff}.button.full{width:100%}.text-button{color:var(--brand-primary);cursor:pointer;background:0 0;border:0;padding:6px 0;font-weight:600}.text-button.muted{color:#776f63;margin-left:20px}.text-button.centre{margin:16px auto 0;display:block}.back-link{cursor:pointer;background:0 0;border:0;margin-bottom:42px;padding:8px 0}.hero{background:#e2e7dc;grid-template-columns:.82fr 1.18fr;min-height:700px;display:grid}.hero-copy{align-self:center;max-width:600px;padding:90px clamp(30px,7vw,120px)}.hero-copy>p:not(.eyebrow){color:#456056;margin-bottom:35px;font-family:Playfair Display,Georgia,serif;font-size:1.35rem;line-height:1.5}.hero-image{min-height:600px;position:relative;overflow:hidden}.hero-image>img{object-fit:cover;object-position:52% 50%;width:100%;height:100%}.hero-caption{background:#f7f3eaed;flex-direction:column;gap:5px;padding:18px 22px;display:flex;position:absolute;bottom:28px;left:28px}.hero-caption span{color:#9a7e49;letter-spacing:.15em;text-transform:uppercase;font-size:.65rem}.hero-caption strong{font-family:Playfair Display,Georgia,serif;font-weight:500}.section-heading{justify-content:space-between;align-items:end;margin-bottom:46px;display:flex}.section-heading h2{max-width:720px;margin-bottom:0}.section-heading>p{color:#62736c;max-width:430px;line-height:1.7}.category-tabs{scrollbar-width:thin;gap:5px;margin-bottom:35px;padding-bottom:8px;display:flex;overflow-x:auto}.category-tabs button{cursor:pointer;background:0 0;border:1px solid #c9c5b9;flex:none;padding:10px 16px}.category-tabs button.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.product-grid{grid-template-columns:repeat(3,1fr);gap:42px 24px;display:grid}.product-card{background:#fbf9f3}.product-image{cursor:pointer;background:#dde4da;border:0;width:100%;height:330px;padding:26px;position:relative;overflow:hidden}.product-image img{object-fit:contain;width:100%;height:100%}.product-card:first-child .product-image img{object-fit:cover}.real-photo-badge{letter-spacing:.12em;text-transform:uppercase;background:#f7f3ea;padding:8px 10px;font-size:.65rem;position:absolute;bottom:14px;right:14px}.product-card-body{padding:25px 26px 28px}.product-family{color:#9a7e49;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:.68rem}.product-card-body h3{margin-bottom:10px}.product-card-body>p:not(.product-family){color:#617169;min-height:51px;line-height:1.6}.card-action{border-top:1px solid #ded9cd;justify-content:space-between;align-items:center;margin-top:22px;padding-top:19px;display:flex}.card-action>span{color:#66766e;font-size:.82rem}.how-it-works{background:var(--brand-primary);color:#f5f0e4;max-width:none}.how-it-works>p,.how-it-works>h2{max-width:1328px;margin-left:auto;margin-right:auto}.steps{grid-template-columns:repeat(3,1fr);gap:20px;max-width:1328px;margin:55px auto 0;display:grid}.steps>div{border-top:1px solid #ffffff4d;padding:26px 30px 10px 0}.steps span{color:#cfb77f;letter-spacing:.12em;font-size:.72rem}.steps h3{margin:28px 0 10px}.steps p{color:#c9d4ce;line-height:1.6}.help-band{text-align:center;background:#d8ddcd;padding:100px max(20px,50vw - 664px)}.help-band p:last-child{color:#52665c;max-width:670px;margin:0 auto;line-height:1.7}.builder-heading{max-width:650px;margin-bottom:48px}.builder-heading h1,.basket-page>h1,.review-page>h1{margin-bottom:18px;font-size:clamp(2.7rem,5vw,4.8rem)}.builder-heading>p:last-child{color:#62736c;line-height:1.7}.builder-layout{grid-template-columns:minmax(260px,.85fr) minmax(360px,1.35fr) minmax(270px,.78fr);align-items:start;gap:32px;display:grid}.builder-controls,.order-summary,.basket-total,.review-total{background:#fbf9f3;padding:30px}form>label,.builder-controls>label{margin-bottom:25px;font-size:.82rem;font-weight:600;display:block}input:not([type=radio]),select,textarea{color:#18332a;background:#fffefb;border:1px solid #c6c5ba;border-radius:0;width:100%;min-height:48px;margin-top:9px;padding:12px 13px;display:block}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #b79a6280}.option-group{border:0;margin:0 0 27px;padding:0}.option-group legend{margin-bottom:12px;font-size:.82rem;font-weight:600}.choice-grid{gap:8px;display:grid}.choice-grid label{cursor:pointer;border:1px solid #c6c5ba;padding:12px}.choice-grid label.selected{border-color:var(--brand-primary);background:#edf0e8}.choice-grid input,.swatches input{opacity:0;width:1px;height:1px;position:absolute}.swatch-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.swatch-grid label{cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;min-height:42px;padding:6px;font-size:.72rem;display:flex}.swatch-grid label.selected{border-color:var(--brand-primary)}.swatch{border:1px solid #0000001f;border-radius:50%;flex:none;width:24px;height:24px}.builder-preview{min-width:0;position:sticky;top:24px}.preview-stage{text-align:center;background:#dfe4d9;padding:62px 34px 24px}.sign-preview{background:var(--sign-colour);width:100%;max-width:560px;height:390px;display:inline-block;position:relative;overflow:hidden;box-shadow:0 16px 35px #162d2433;container-type:inline-size}.sign-preview.has-family-renderer{aspect-ratio:var(--sign-aspect);height:auto;max-width:var(--preview-max-width);width:min(100%, var(--preview-max-width))}.sign-preview.has-family-renderer.shape-os-master{-webkit-mask-image:var(--sign-silhouette);mask-image:var(--sign-silhouette);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--sign-silhouette);-webkit-mask-position:50%;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat}.preview-composition{pointer-events:none;position:absolute;inset:0}.preview-artwork{background:var(--detail-colour);pointer-events:none;position:absolute;inset:0;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.sign-preview.has-divider:after{background:var(--detail-colour);content:"";opacity:.72;height:1px;position:absolute;top:63%;left:14%;right:14%}.preview-divider{background:var(--detail-colour);pointer-events:none;z-index:1;position:absolute}.personalisation-overlay{color:var(--detail-colour);text-shadow:0 2px 5px #0000001f;z-index:2;position:absolute;inset:0}.preview-number{font-family:var(--number-font);font-size:clamp(4.4rem,8vw,7.5rem);font-weight:var(--number-weight);white-space:nowrap;justify-content:center;align-items:center;line-height:.85;display:flex;position:absolute}.preview-number-run{align-items:center;height:1em;line-height:1;display:flex}.preview-number-slot{flex:none;justify-content:center;align-items:center;height:1em;display:inline-flex}.preview-number-character{display:inline-block}.preview-stencil-digit{background:currentColor;flex:none;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.preview-stencil-digit.legacy-stencil-digit{width:.48em;height:.72em;margin:0 .01em}.preview-street{font-family:var(--street-font);font-size:clamp(1.15rem,2vw,1.8rem);font-weight:var(--street-weight);text-align:center;flex-direction:column;justify-content:center;align-items:center;line-height:1.02;display:flex;position:absolute}.preview-street-run{align-items:center;gap:var(--street-gap,0);flex-direction:column;justify-content:center;line-height:1;display:flex}.preview-street-run>span{white-space:nowrap;display:block}.has-approved-geometry .preview-number,.has-approved-geometry .preview-street{font-size:100px}.preview-safe-debug{pointer-events:none;z-index:20;position:absolute;inset:0}.preview-debug-box{box-sizing:border-box;border:1px solid #ff2d55;position:absolute}.preview-debug-box:after{color:#111;content:attr(data-debug-label);background:#ffffffe6;padding:1px 2px;font:8px/1.2 sans-serif;position:absolute;top:0;left:0}.debug-physical{border-color:#00e5ff;inset:0}.debug-safe{border-color:#fc0}.debug-motif{border-color:#7cff00}.debug-number{border-color:#ff2d55}.debug-divider{border-color:#af52de}.debug-street{border-color:#ff9500}.debug-composition{border:1px dashed #fff}.debug-fixing{background:#ff2d5533;border-color:#ff2d55;border-radius:50%}.template-motif-rectangle .preview-number{width:39%;height:45%;top:9%;left:50%}.template-motif-rectangle.design-plain .preview-number,.template-motif-rectangle.design-flower .preview-number{width:92%;left:4%}.template-motif-rectangle .preview-street{min-height:28%;bottom:2.5%;left:5%;right:5%}.template-classic .preview-number{width:84%;height:52%;top:13%;left:8%}.template-classic .preview-street{min-height:23%;bottom:9%;left:8%;right:8%}.template-number-only .preview-number{inset:12%}.sign-preview.is-vertical{max-width:310px;height:440px}.template-vertical-motif .preview-number{width:74%;height:22%;top:40.5%;left:13%}.template-vertical-motif .preview-street{height:15%;top:73%;left:5%;right:5%}.template-caravan .preview-number{width:84%;height:26%;top:50%;left:8%}.template-caravan .preview-street{height:15%;top:81%;left:4%;right:4%}.sign-preview.is-square{max-width:390px;height:390px}.sign-preview.is-vertical.has-family-renderer,.sign-preview.is-square.has-family-renderer,.sign-preview.is-horizontal.has-family-renderer{height:auto;max-width:var(--preview-max-width);width:min(100%, var(--preview-max-width))}.sign-preview.is-square:before{border:6px solid var(--detail-colour);content:"";pointer-events:none;position:absolute;inset:22px}.family-sq:before{display:none}.square-production-detail{border:2.5cqw solid var(--detail-colour);pointer-events:none;z-index:1;position:absolute;inset:1.85%}.square-production-detail i{background:#dfe4d9;border:1px solid #18332a59;border-radius:50%;width:4cqw;height:4cqw;position:absolute;top:50%;transform:translateY(-50%)}.square-production-detail i:first-child{left:5.2%}.square-production-detail i:last-child{right:5.2%}.sign-preview.is-number-only{max-width:330px;height:330px}.preview-note{color:#5f7268;max-width:510px;margin:24px auto 0;font-size:.72rem;line-height:1.5}.order-summary{position:sticky;top:24px}.order-summary h2{font-size:1.8rem}.order-summary dl{border-top:1px solid #ddd8cc;border-bottom:1px solid #ddd8cc;margin:24px 0;padding:12px 0}.order-summary dl div{justify-content:space-between;padding:8px 0;font-size:.8rem;display:flex}.order-summary dt{color:#6b756f}.order-summary dd{text-align:right;max-width:55%;margin:0}.quantity{justify-content:space-between;align-items:center;font-size:.82rem;font-weight:600;display:flex}.quantity input{width:75px;margin:0}.summary-total{border-top:1px solid #ddd8cc;justify-content:space-between;align-items:end;margin-top:24px;padding:20px 0;display:flex}.summary-total strong{font-family:Playfair Display,Georgia,serif;font-size:1.65rem;font-weight:500}.developer-details{color:#66736c;border-top:1px solid #ded9cd;margin-top:24px;padding-top:15px;font-size:.72rem}.developer-details summary{cursor:pointer}.developer-details code{overflow-wrap:anywhere;padding-top:8px;display:block}.basket-layout,.review-layout{grid-template-columns:1fr 360px;align-items:start;gap:38px;margin-top:45px;display:grid}.basket-item{border-bottom:1px solid #d8d3c8;grid-template-columns:190px 1fr auto;align-items:center;gap:25px;padding:24px 0;display:grid}.preview-stage.compact{padding:16px}.preview-stage.compact .sign-preview{height:125px}.preview-stage.compact .sign-preview.has-family-renderer{height:auto;max-width:var(--compact-max-width);width:min(100%, var(--compact-max-width))}.preview-stage.compact .preview-number{font-size:2.2rem}.preview-stage.compact .preview-street{font-size:.68rem}.basket-item-copy h2{margin-bottom:8px;font-size:1.55rem}.basket-item-copy>p:not(.product-family){color:#63736b;margin-bottom:5px;font-size:.84rem}.basket-actions{flex-wrap:wrap;align-items:center;gap:9px 16px;margin-top:16px;display:flex}.quantity-stepper{border:1px solid #c6c5ba;align-items:center;display:inline-flex}.quantity-stepper button{cursor:pointer;background:0 0;border:0;width:44px;height:44px;font-size:1.15rem}.quantity-stepper span{text-align:center;min-width:30px}.basket-total{position:sticky;top:24px}.basket-total>div:not(.summary-total){justify-content:space-between;padding:10px 0;display:flex}.basket-total>p{color:#6c7771;margin-top:25px;font-size:.78rem;line-height:1.5}.empty-state{text-align:center;background:#e3e7dd;margin-top:45px;padding:80px 30px}.review-notice{background:#ede8da;flex-direction:column;gap:5px;margin-top:34px;padding:20px 24px;display:flex}.review-notice span{color:#64736c;font-size:.82rem}.review-item{background:#fbf9f3;grid-template-columns:minmax(280px,1.2fr) 1fr;gap:28px;margin-bottom:24px;padding:24px;display:grid}.review-item .preview-stage{padding:34px 22px 20px}.review-item .sign-preview{height:280px}.review-item .sign-preview.has-family-renderer{height:auto;max-width:var(--review-max-width);width:min(100%, var(--review-max-width))}.review-copy{padding:14px 8px}.review-copy h2{font-size:2rem}.review-copy dl{margin:22px 0}.review-copy dl div{border-bottom:1px solid #e2ddd2;justify-content:space-between;padding:8px 0;font-size:.82rem;display:flex}.review-copy dt{color:#68766f}.review-copy dd{text-align:right;max-width:60%;margin:0}.review-total{position:sticky;top:24px}.review-total>p:not(.eyebrow){color:#69766f;font-size:.82rem;line-height:1.55}.confirmation{text-align:center;max-width:860px}.confirmation-mark{color:#9a7e49;border:1px solid #b79a62;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin:0 auto 35px;font-size:2rem;display:flex}.confirmation>p:not(.eyebrow){color:#62736c;max-width:650px;margin:0 auto 32px;line-height:1.7}.payload{text-align:left}.payload pre{color:#dbe4de;white-space:pre-wrap;background:#142f27;max-height:360px;padding:18px;overflow:auto}footer{color:#d7e0da;background:#102e25;grid-template-columns:1fr auto;align-items:center;gap:12px 30px;padding:52px clamp(20px,5vw,76px);font-size:.75rem;display:grid}.footer-wordmark{color:#f2ede2;grid-row:span 2}footer p{text-align:right;margin:0}@media (width<=1100px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:70px 45px}.product-grid{grid-template-columns:1fr 1fr}.builder-layout{grid-template-columns:1fr 1.3fr}.order-summary{grid-column:1/-1;position:static}.order-summary dl{grid-template-columns:1fr 1fr;gap:0 30px;display:grid}}@media (width<=760px){.prototype-strip{padding:7px 12px}.site-header{height:auto;padding:18px 20px}.wordmark{font-size:1.05rem}.wordmark-mark{width:32px;height:32px}nav{gap:12px}nav a{display:none}nav button{font-size:.8rem}nav button:first-child{display:none}.section{padding:72px 20px}.hero{flex-direction:column;min-height:0;display:flex}.hero-copy{padding:70px 25px 55px}.hero-image{height:460px;min-height:0}.hero-caption{bottom:15px;left:15px;right:15px}.section-heading{flex-direction:column;align-items:start}.section-heading>p{margin-top:24px}.product-grid{grid-template-columns:1fr;gap:26px}.product-image{height:300px}.steps{grid-template-columns:1fr}.builder-layout{flex-direction:column;display:flex}.builder-controls,.builder-preview,.order-summary{width:100%}.builder-preview{order:-1;position:static}.preview-stage{padding:34px 18px 20px}.sign-preview{height:280px}.sign-preview.has-family-renderer{height:auto;max-width:var(--mobile-max-width);width:min(100%, var(--mobile-max-width))}.preview-number{font-size:4.4rem}.preview-street{font-size:1.05rem}.order-summary dl{display:block}.basket-layout,.review-layout{grid-template-columns:1fr}.basket-item{grid-template-columns:115px 1fr;align-items:start}.basket-item>strong{grid-column:2}.basket-total,.review-total{position:static}.review-item{grid-template-columns:1fr;padding:16px}.review-item .sign-preview{height:250px}.review-item .sign-preview.has-family-renderer{height:auto;max-width:var(--mobile-max-width);width:min(100%, var(--mobile-max-width))}footer{text-align:center;grid-template-columns:1fr}.footer-wordmark{justify-content:center}footer p{text-align:center}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
