.door-funnel-page{min-height:100vh;background:#f6f1f4;color:#261f27}.funnel-header{height:82px;padding:10px clamp(18px,4vw,48px);display:flex;align-items:center;gap:14px;background:#fff;border-bottom:1px solid #eadfe6}.funnel-brand{width:58px;height:58px;display:block}.funnel-brand img{width:100%;height:100%;object-fit:contain}.funnel-header-copy{display:flex;flex-direction:column;line-height:1.15}.funnel-header-copy strong{font-size:18px;color:#4b123f}.funnel-header-copy span{font-size:13px;color:#756c73}.funnel-phone{margin-left:auto;text-decoration:none;text-align:right;line-height:1.2}.funnel-phone span{display:block;font-size:12px;color:#756c73}.funnel-phone strong{font-size:16px;color:#4b123f}.funnel-offer-bar{min-height:44px;padding:9px 18px;display:flex;align-items:center;justify-content:center;gap:18px;color:#fff;background:#4b123f;font-size:14px;text-align:center}.funnel-offer-bar span{color:#ffc3e5}.funnel-main{width:min(1180px,calc(100% - 28px));margin:28px auto 48px}.funnel-progress{height:5px;margin:0 10px;background:#dfd3db;border-radius:99px;overflow:hidden}.funnel-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#e20b86,#7a1c67);border-radius:inherit;transition:width .35s ease}.funnel-card{position:relative;margin-top:12px;background:#fff;border:1px solid #eadfe6;border-radius:26px;box-shadow:0 24px 60px rgba(54,21,47,.10);overflow:hidden}.funnel-step{display:none;padding:clamp(30px,5vw,68px)}.funnel-step.is-active{display:block;animation:step-in .28s ease both}@keyframes step-in{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:none}}.funnel-kicker{margin:0 0 14px;color:#d10b79;font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.funnel-step h1{max-width:690px;margin-bottom:22px;font-size:clamp(42px,6vw,76px);line-height:.98;color:#32102b}.funnel-step h2{margin-bottom:15px;font-size:clamp(34px,5vw,56px);color:#32102b}.funnel-lead{max-width:640px;margin-bottom:20px;font-size:clamp(19px,2.2vw,25px);line-height:1.45;color:#52464f}.sale-promise{width:max-content;max-width:100%;margin:0 0 28px;padding:10px 14px;color:#fff;background:#32102b;border-radius:7px;font-weight:800}.intro-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:center;gap:32px}.intro-doors{height:470px;display:flex;align-items:flex-end;justify-content:center;position:relative}.intro-doors img{height:82%;width:auto;object-fit:contain;filter:drop-shadow(0 18px 16px rgba(50,16,43,.16))}.intro-doors img:first-child{transform:translateX(22%) rotate(-2deg);z-index:2}.intro-doors img:nth-child(2){height:94%;z-index:3}.intro-doors img:last-child{transform:translateX(-22%) rotate(2deg);z-index:2}.funnel-button{min-height:56px;padding:14px 24px;border:0;border-radius:10px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.funnel-button:hover{transform:translateY(-1px)}.funnel-button-primary{color:#fff;background:#df0c84;box-shadow:0 12px 30px rgba(223,12,132,.23)}.funnel-button-primary:hover{background:#c30975}.funnel-button:disabled{opacity:.65;cursor:wait;transform:none}.intro-points{display:flex;flex-wrap:wrap;gap:12px 22px;margin:24px 0 0;padding:0;list-style:none;color:#5e525b;font-size:14px;font-weight:700}.intro-points li::before{content:"✓";margin-right:6px;color:#d10b79}.offer-smallprint{margin:24px 0 0;padding-top:18px;border-top:1px solid #eee4ea;color:#786e75;font-size:12px;line-height:1.55}.step-heading{max-width:820px;margin-bottom:34px}.step-heading p:last-child{margin:0;color:#6d626a;font-size:18px}.narrow-heading{max-width:680px;margin-inline:auto;text-align:center}.door-choice-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.door-choice{padding:14px 12px 16px;display:flex;flex-direction:column;align-items:stretch;text-align:left;color:#2e242c;background:#fbf8fa;border:2px solid transparent;border-radius:15px;cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.door-choice:hover,.door-choice:focus-visible{transform:translateY(-3px);border-color:#e20b86;box-shadow:0 12px 30px rgba(61,28,52,.10)}.door-choice.is-selected{border-color:#e20b86;background:#fff1f9}.door-image{height:230px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(#fff,#f3eaf0);border-radius:10px;overflow:hidden}.door-image img{height:94%;width:auto;object-fit:contain;filter:drop-shadow(0 9px 8px rgba(50,16,43,.15))}.door-details{padding-top:13px;display:flex;flex-direction:column;gap:5px}.door-details strong{font-size:15px;line-height:1.25}.door-details b{color:#c20971;font-size:18px}.answer-grid{width:min(760px,100%);margin-inline:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.answer-card{min-height:130px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#312831;background:#fbf8fa;border:2px solid #e8dfe5;border-radius:16px;cursor:pointer;font-weight:750}.answer-card:hover,.answer-card:focus-visible{border-color:#e20b86;background:#fff4fa}.answer-card i{width:48px;height:48px;background:var(--swatch);border:1px solid rgba(0,0,0,.1);border-radius:50%;box-shadow:inset 0 0 0 3px rgba(255,255,255,.15)}.answer-card .oak-swatch{background:linear-gradient(110deg,#8c542d,#d59a52 35%,#76421f 45%,#c18443 72%,#7e4828)}.two-up{grid-template-columns:repeat(2,1fr);max-width:680px}.answer-text strong{font-size:25px;color:#4b123f}.answer-text span{color:#6d626a;font-weight:500}.answer-list{width:min(700px,100%);margin-inline:auto;display:grid;gap:14px}.answer-row{width:100%;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;color:#332a31;background:#fbf8fa;border:2px solid #e8dfe5;border-radius:14px;cursor:pointer}.answer-row:hover,.answer-row:focus-visible{border-color:#e20b86;background:#fff4fa}.answer-row span{display:flex;flex-direction:column;gap:3px}.answer-row strong{font-size:18px}.answer-row small{color:#756b72;font-size:14px}.answer-row b{color:#d10b79;font-size:24px}.opening-note{width:min(700px,100%);margin:18px auto 0;padding:16px 18px;display:flex;flex-direction:column;background:#fff4e4;border:1px solid #eed2a6;border-radius:12px}.opening-note[hidden]{display:none}.opening-note span{color:#6c5741;font-size:14px}.selected-summary{width:min(780px,100%);margin:0 auto 28px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#fff;background:#4b123f;border-radius:14px}.selected-summary strong{display:block;font-size:19px}.selected-summary span{color:#f4cee5;font-size:14px}.selected-summary b{font-size:23px;white-space:nowrap}.contact-fields{width:min(780px,100%);margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;gap:17px}.contact-fields label{display:flex;flex-direction:column;gap:6px;font-weight:750}.contact-fields label>span{font-size:14px}.contact-fields em{color:#82767e;font-style:normal;font-weight:500}.contact-fields input,.contact-fields textarea{width:100%;padding:13px 14px;color:#2d242b;background:#fff;border:1px solid #cfc3cb;border-radius:9px}.contact-fields input:focus,.contact-fields textarea:focus{border-color:#e20b86;outline:3px solid rgba(226,11,134,.12)}.field-wide{grid-column:1/-1}.funnel-consent{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:500!important}.funnel-consent input{width:20px;height:20px;flex:0 0 auto;margin-top:2px}.funnel-consent span{font-size:13px!important;line-height:1.45}.funnel-status{width:min(780px,100%);min-height:22px;margin:14px auto 0;color:#a22a3a;font-size:14px}.funnel-submit{width:min(780px,100%);margin:5px auto 0;display:block}.secure-note{text-align:center;margin:12px 0 0;color:#776c74;font-size:12px}.funnel-navigation{padding:14px clamp(30px,5vw,68px);display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee4ea;color:#7b6e77;font-size:13px}.back-button{padding:8px 0;color:#5b4655;background:none;border:0;font-weight:750;cursor:pointer}.funnel-honeypot{position:absolute;left:-9999px}.funnel-success{max-width:760px;margin-inline:auto;text-align:center}.success-mark{width:74px;height:74px;margin:0 auto 22px;display:grid;place-items:center;color:#fff;background:#1f6b4a;border-radius:50%;font-size:38px;font-weight:800}.funnel-success h2{font-size:clamp(36px,5vw,54px)}.funnel-success>p:not(.funnel-kicker){font-size:18px;color:#5f555c}.success-selection{margin:22px auto;padding:18px;color:#fff;background:#4b123f;border-radius:14px}.success-selection strong{display:block;font-size:22px}.success-calls{margin:28px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.success-calls a{padding:14px;color:#4b123f;background:#fff4fa;border:1px solid #e9c9dc;border-radius:12px;text-decoration:none;font-size:13px}.success-calls strong{font-size:18px}.funnel-text-link{color:#a70862;font-weight:750}.funnel-footer{padding:28px max(20px,calc((100vw - 1100px)/2));display:grid;grid-template-columns:1fr auto;gap:12px 30px;color:#746a71;background:#ece3e8;font-size:13px}.funnel-footer>div{display:flex;gap:9px;flex-direction:column}.funnel-footer>div:nth-child(2){align-items:flex-end}.funnel-footer a{color:#4b123f}.funnel-footer p{grid-column:1/-1;margin:8px 0 0;padding-top:16px;border-top:1px solid #d8ccd3;font-size:11px;line-height:1.55}.funnel-footer strong{color:#4b123f}.funnel-footer span{font-size:12px}
@media(max-width:980px){.door-choice-grid{grid-template-columns:repeat(3,1fr)}.intro-layout{grid-template-columns:1fr}.intro-doors{height:330px;order:-1}.intro-copy{text-align:center}.funnel-step h1,.funnel-lead{margin-inline:auto}.sale-promise{margin-inline:auto}.intro-points{justify-content:center}.funnel-button-primary{min-width:250px}.offer-smallprint{text-align:center}}
@media(max-width:680px){.funnel-header{height:70px;padding:8px 14px}.funnel-brand{width:50px;height:50px}.funnel-header-copy strong{font-size:15px}.funnel-header-copy span{font-size:11px}.funnel-phone span{display:none}.funnel-phone strong{font-size:13px}.funnel-offer-bar{min-height:50px;gap:4px;flex-direction:column;font-size:12px;line-height:1.2}.funnel-main{width:calc(100% - 16px);margin:12px auto 26px}.funnel-card{border-radius:18px}.funnel-step{padding:28px 18px}.funnel-step h1{font-size:42px}.funnel-step h2{font-size:34px}.intro-doors{height:260px}.intro-doors img{height:78%}.intro-doors img:nth-child(2){height:92%}.funnel-lead{font-size:18px}.intro-points{display:grid;gap:5px;text-align:left}.offer-smallprint{text-align:left}.step-heading{margin-bottom:24px}.step-heading p:last-child{font-size:16px}.door-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.door-choice{padding:9px}.door-image{height:178px}.door-details strong{font-size:13px}.door-details b{font-size:16px}.answer-grid{grid-template-columns:repeat(2,1fr);gap:10px}.answer-card{min-height:116px;padding:13px}.two-up{grid-template-columns:1fr}.answer-row{padding:17px 15px}.answer-row strong{font-size:16px}.contact-fields{grid-template-columns:1fr}.field-wide{grid-column:auto}.selected-summary{align-items:flex-start;flex-direction:column;gap:5px}.funnel-navigation{padding:12px 18px}.success-calls{grid-template-columns:1fr}.funnel-footer{padding:24px 20px;grid-template-columns:1fr}.funnel-footer>div:nth-child(2){align-items:flex-start}.funnel-footer p{grid-column:auto}}
@media(max-width:380px){.funnel-header-copy{display:none}.door-image{height:155px}.funnel-step h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){.funnel-step.is-active{animation:none}.funnel-progress span,.door-choice,.funnel-button{transition:none}}
.funnel-navigation[hidden]{display:none!important}
.door-funnel-page{background:linear-gradient(145deg,#f7f1f4 0%,#f3f7f3 55%,#f8f3eb 100%)}.funnel-offer-bar{background:linear-gradient(90deg,#4b123f 0%,#5f174e 50%,#1f503d 100%);border-bottom:2px solid #c9a75a}.funnel-intro{background:radial-gradient(circle at 88% 12%,rgba(31,80,61,.08),transparent 34%),#fff}.christmas-badge{width:max-content;max-width:100%;margin:0 0 18px;padding:8px 13px;display:inline-flex;align-items:center;gap:8px;color:#fff;background:#1f503d;border:1px solid #c9a75a;border-radius:999px;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 20px rgba(31,80,61,.14)}.christmas-badge::before{content:"✦";color:#f0d79a}.sale-promise{border-left:4px solid #c9a75a}.funnel-offer-bar strong::before{content:"✦";margin-right:8px;color:#f0d79a}.funnel-offer-bar strong::after{content:"✦";margin-left:8px;color:#f0d79a}
.answer-card small{color:#8b5a78;font-size:12px;font-weight:800}.special-colour-card{background:linear-gradient(135deg,#fff1f9,#f3e2ee)}.special-colour-card strong{color:#4b123f;font-size:18px}.special-colour-card span{color:#6d626a;font-size:13px;font-weight:550}.specification-grid{width:min(900px,100%);margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}.specification-grid fieldset{margin:0;padding:18px;display:grid;gap:12px;border:1px solid #dfd3db;border-radius:16px}.specification-grid legend{padding:0 8px;color:#4b123f;font-size:17px;font-weight:850}.specification-grid .answer-row{height:100%}.answer-row.is-selected{border-color:#e20b86;background:#fff1f9;box-shadow:0 8px 24px rgba(75,18,63,.08)}.specification-total{width:min(620px,100%);margin:24px auto 14px;padding:17px 20px;display:grid;grid-template-columns:1fr auto;align-items:center;color:#fff;background:#4b123f;border-radius:14px}.specification-total span{font-weight:700}.specification-total strong{font-size:25px}.specification-total small{grid-column:1/-1;color:#f1cbe1}.specification-continue{min-width:220px;margin:0 auto;display:block}.specification-continue:disabled{box-shadow:none}
@media(max-width:680px){.specification-grid{grid-template-columns:1fr}.specification-grid fieldset{padding:13px}.specification-total{grid-template-columns:1fr}.specification-total strong{font-size:22px}.specification-total small{grid-column:auto}}
@media(min-width:981px){.intro-layout{grid-template-columns:minmax(0,57%) minmax(0,43%);gap:20px}.intro-copy{position:relative;z-index:2;min-width:0;padding-right:32px}.intro-doors{position:relative;z-index:1;min-width:0;overflow:hidden;padding-left:8px}.intro-doors img{height:74%;max-width:42%}.intro-doors img:nth-child(2){height:88%}.funnel-lead{max-width:100%}}

/* Phone layout: designed as a single-column tap journey rather than a shrunken desktop page. */
@media(max-width:680px){
  html{overflow-x:hidden}
  .door-funnel-page{overflow-x:hidden;padding-bottom:env(safe-area-inset-bottom)}
  .funnel-header{height:auto;min-height:64px;padding:7px 12px;gap:9px}
  .funnel-brand{width:46px;height:46px;flex:0 0 46px}
  .funnel-header-copy{min-width:0}
  .funnel-header-copy strong{font-size:14px;white-space:nowrap}
  .funnel-header-copy span{font-size:10px}
  .funnel-phone{min-width:0}
  .funnel-phone strong{display:block;font-size:12px;white-space:nowrap}
  .funnel-offer-bar{min-height:0;padding:9px 12px;gap:2px;font-size:11px}
  .funnel-offer-bar strong{line-height:1.3}
  .funnel-offer-bar strong::before,.funnel-offer-bar strong::after{margin:0 5px}
  .funnel-main{width:100%;margin:0 auto 18px}
  .funnel-progress{height:4px;margin:0;border-radius:0}
  .funnel-card{margin-top:0;border-width:0 0 1px;border-radius:0;box-shadow:none;overflow:visible}
  .funnel-step{min-width:0;padding:24px 16px 26px}
  .funnel-step h1{margin-bottom:14px;font-size:clamp(34px,10.5vw,42px);line-height:1.02;letter-spacing:-.025em}
  .funnel-step h2{margin-bottom:11px;font-size:clamp(28px,8.5vw,34px);line-height:1.08;letter-spacing:-.02em}
  .funnel-kicker{margin-bottom:9px;font-size:10px}
  .funnel-lead{margin-bottom:15px;font-size:17px;line-height:1.42}
  .christmas-badge{margin-bottom:13px;padding:7px 10px;font-size:10px;line-height:1.25}
  .intro-layout{gap:14px}
  .intro-copy{text-align:left}
  .intro-doors{width:100%;height:190px;margin:0 auto;overflow:hidden}
  .intro-doors img{height:75%;max-width:43%}
  .intro-doors img:first-child{transform:translateX(18%) rotate(-2deg)}
  .intro-doors img:nth-child(2){height:90%}
  .intro-doors img:last-child{transform:translateX(-18%) rotate(2deg)}
  .sale-promise{width:100%;margin:0 0 16px;padding:10px 12px;font-size:14px;line-height:1.35;text-align:left}
  .funnel-button,.funnel-button-primary{width:100%;min-width:0;min-height:54px;padding:13px 16px;font-size:16px}
  .intro-points{margin-top:17px;gap:7px;font-size:13px}
  .offer-smallprint{margin-top:18px;padding-top:14px;font-size:11px;line-height:1.5}
  .step-heading,.narrow-heading{margin-bottom:19px;text-align:left}
  .step-heading p:last-child{font-size:15px;line-height:1.45}
  .door-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .door-choice{min-width:0;padding:8px;border-width:2px;border-radius:12px}
  .door-image{height:150px;border-radius:8px}
  .door-image img{max-width:100%;height:92%}
  .door-details{min-width:0;padding-top:9px;gap:3px}
  .door-details strong{min-height:2.5em;font-size:12px;line-height:1.25}
  .door-details b{font-size:15px;line-height:1.2;white-space:nowrap}
  .answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .answer-card{min-width:0;min-height:105px;padding:11px 8px;gap:8px;border-radius:12px;font-size:14px;line-height:1.25;text-align:center}
  .answer-card i{width:40px;height:40px}
  .answer-card small{font-size:10px}
  .special-colour-card strong{font-size:15px}
  .special-colour-card span{font-size:11px}
  .two-up{grid-template-columns:1fr}
  .answer-text{min-height:82px}
  .answer-list{gap:10px}
  .answer-row{min-width:0;padding:15px 13px;gap:10px;border-radius:12px}
  .answer-row span{min-width:0}
  .answer-row strong{font-size:15px;line-height:1.25}
  .answer-row small{font-size:12px;line-height:1.35}
  .answer-row b{flex:0 0 auto;font-size:18px;white-space:nowrap}
  .specification-grid{gap:13px}
  .specification-grid fieldset{min-width:0;padding:12px 10px 10px;gap:9px;border-radius:12px}
  .specification-grid legend{font-size:15px}
  .specification-total{margin:16px auto 12px;padding:14px 15px;gap:2px;border-radius:12px}
  .specification-total strong{font-size:21px}
  .specification-total small{font-size:11px;line-height:1.35}
  .specification-continue{width:100%;min-width:0}
  .opening-note{padding:13px 14px;font-size:13px}
  .selected-summary{margin-bottom:20px;padding:14px 15px;gap:4px;border-radius:12px;overflow-wrap:anywhere}
  .selected-summary strong{font-size:17px}
  .selected-summary span{font-size:12px;line-height:1.4}
  .selected-summary b{font-size:21px}
  .contact-fields{gap:14px}
  .contact-fields input,.contact-fields textarea{min-height:48px;padding:12px 13px;font-size:16px}
  .contact-fields textarea{min-height:96px}
  .funnel-consent span{font-size:12px!important}
  .funnel-navigation{position:sticky;z-index:8;bottom:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);box-shadow:0 -8px 20px rgba(54,21,47,.07);backdrop-filter:blur(10px)}
  .back-button{min-height:40px}
  .success-mark{width:62px;height:62px;margin-bottom:16px;font-size:32px}
  .funnel-success>p:not(.funnel-kicker){font-size:16px}
  .success-selection{padding:14px}
  .success-selection strong{font-size:18px}
  .funnel-footer{padding:22px 16px calc(22px + env(safe-area-inset-bottom));gap:10px;font-size:12px}
}

@media(max-width:360px){
  .funnel-header-copy span{display:none}
  .funnel-step{padding-inline:13px}
  .funnel-step h1{font-size:33px}
  .funnel-step h2{font-size:28px}
  .door-image{height:136px}
  .door-details b{font-size:14px}
}
