:root{--bg:#fbf8f1;--card:#fff;--text:#15130f;--muted:#6f675d;--accent:#d58b00;--accent-dark:#a96d00;--border:#efd9b5;--line:#ddd5c9;--success:#176b3a;--danger:#9c2929;--radius:16px;--shadow:0 12px 34px rgba(58,43,20,.06);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:radial-gradient(circle at 12% 0%,rgba(200,140,26,.08),transparent 34rem),var(--bg);color:var(--text);line-height:1.55}
button,input{font:inherit}
button:focus-visible,input:focus-visible,label:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:2px}
.shell{width:min(1180px,calc(100% - 28px));margin:auto;padding:16px 0 60px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.025em}
h1{font-size:clamp(1.7rem,4vw,2.25rem);margin-bottom:0}
h2{font-size:clamp(1.3rem,3vw,1.8rem)}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:850;color:var(--accent);margin:0 0 8px}
.order-panel{min-width:0}
.order-header,.summary-number-row,.summary-detail,.selected-number-row,.result-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.order-header{margin-bottom:18px;align-items:flex-start}.order-header>div{min-width:0}.order-subtitle{margin:4px 0 0;color:var(--muted);font-weight:400}
.panel-close,.outline-button{border:1px solid var(--accent);background:var(--card);color:var(--text);border-radius:11px;padding:10px 18px;font-weight:750;cursor:pointer;white-space:nowrap}
.panel-close:hover,.outline-button:hover{background:color-mix(in srgb,var(--bg) 68%,#fff);color:var(--accent-dark)}
#closeOrderPanel{display:none}
.summary-card,.accordion,.result-card{background:color-mix(in srgb,var(--card) 96%,var(--bg));border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}
.mobile-summary{display:none;padding:20px;margin-bottom:18px}
.mobile-summary h2{font-size:clamp(1.45rem,7vw,2.3rem);letter-spacing:.06em;margin:0 0 4px;white-space:normal;overflow-wrap:anywhere}
.mobile-summary p{margin-bottom:0;color:var(--muted)}
.summary-price,.selected-price{color:var(--accent);font-size:1.25rem;white-space:nowrap}
.desktop-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:34px;align-items:start}
.process-column{display:grid;gap:12px;min-width:0}
.process-heading{margin:0 0 4px}
.accordion{overflow:hidden}
.accordion.locked{opacity:.55}
.accordion-header{width:100%;border:0;background:transparent;color:inherit;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px 18px;text-align:left;cursor:pointer}
.accordion-header:disabled{cursor:not-allowed}
.step-badge{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;font-weight:850;display:grid;place-items:center}
.accordion-title{display:grid;gap:2px;min-width:0}
.accordion-title strong{font-size:1.15rem}
.accordion-title small{color:var(--muted);font-size:.88rem;line-height:1.35;font-weight:450}
.accordion-icon{color:var(--accent-dark);font-size:1.35rem;font-weight:950;line-height:1;transform:scaleX(1.15)}
.accordion-content{display:none;padding:0 18px 18px}
.step1-quick-price{margin:0 18px 15px;padding:12px 13px 13px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--card) 72%,var(--bg))}
.accordion.open .accordion-content{display:block}
.selected-number-row{border:1px solid var(--border);border-radius:12px;padding:14px 16px}
.selected-number-row>strong:first-child{font-size:1.12rem;letter-spacing:.08em}
#numberPicker h3{margin:4px 0 16px}
.filter-group{margin-bottom:13px}.filter-panel{padding:12px 13px 13px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--card) 72%,var(--bg))}.filter-label{display:block;margin-bottom:9px;font-size:.82rem;font-weight:700;color:var(--text);text-transform:uppercase;letter-spacing:.06em}.filters{display:flex;flex-wrap:wrap;gap:9px}.availability-warning{color:var(--danger);font-weight:700}
.filter{white-space:nowrap;border:1px solid var(--line);background:var(--card);padding:9px 15px;border-radius:999px;cursor:pointer}
.filter.active{background:var(--text);color:#fff;border-color:var(--text)}
.number-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.number-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 15px 15px;display:grid;gap:6px;min-width:0}
.number-card h3{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.54rem;letter-spacing:0;color:var(--text);white-space:nowrap;margin:0;display:flex;align-items:baseline;gap:.12em;font-variant-numeric:lining-nums tabular-nums}
.number-part{font-weight:650;color:#696056}
.pattern-part{font-weight:850;color:#a6684b;letter-spacing:.035em}
.number-space{display:none}
.number-card .price{font-size:1.05rem;margin-top:-3px}
.number-card button{width:100%}
.text-button{border:0;background:transparent;color:var(--accent-dark);text-decoration:underline;font-weight:750;cursor:pointer;padding:12px;margin:8px auto 0;display:block}
.empty{text-align:center;color:var(--muted);padding:38px}
.selection-message{margin:0 0 10px;color:var(--muted);font-size:.92rem;font-weight:700}.selection-message:empty{display:none}
.skeleton{height:150px;border-radius:14px;background:linear-gradient(90deg,#eee 25%,#fafafa 50%,#eee 75%);background-size:200% 100%;animation:loading 1.4s infinite}
@keyframes loading{to{background-position:-200% 0}}
form{display:grid;gap:15px;margin:0}
fieldset{min-width:0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.customer-switch,.choice-fieldset,.payment-options{border:0;padding:0;margin:0}
.customer-options{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.customer-tab{display:flex;justify-content:center;padding:10px;cursor:pointer;font-weight:750}
.customer-tab+ .customer-tab{border-left:1px solid var(--line)}
.customer-tab.active{color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent);border-radius:9px}
.customer-tab input{position:absolute;opacity:0;pointer-events:none}
.form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.form-fields>*:first-child,.form-fields>.field-group:last-child,.form-fields>.full-width{grid-column:1/-1}
label,.field-group{display:grid;gap:6px;font-weight:700;font-size:.93rem;min-width:0}
label small,.field-group small,.choice-card small{font-weight:450;color:var(--muted);line-height:1.42}
input{width:100%;border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff;color:#111;min-width:0}
input:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 22%,transparent)}
input[readonly]{background:color-mix(in srgb,var(--bg) 55%,#fff)}
.input-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.primary,.secondary{border:0;border-radius:10px;padding:12px 16px;font-weight:800;cursor:pointer}
.primary{background:var(--text);color:#fff}
.primary:hover{background:#000}
.primary:disabled,.secondary:disabled{opacity:.38;cursor:not-allowed}
.secondary{background:var(--text);color:#fff;white-space:nowrap}
.company-result{font-size:.86rem;color:var(--success)}
.verification-block{display:grid;gap:6px}
.verification-status{color:var(--muted);font-weight:750}
.verification-status.verified{color:var(--success)}
.choice-fieldset{display:grid;gap:9px}
.choice-fieldset legend{font-weight:800;margin-bottom:7px}
.choice-card{border:1px solid var(--line);border-radius:10px;padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;cursor:pointer;background:var(--card)}
.choice-card:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.choice-card input,.terms input{width:auto;margin-top:3px;accent-color:var(--accent)}
.choice-card span{display:grid;gap:3px}
.registration-time{font-size:.88rem;color:var(--muted);margin:0}
.contact-box,.trust-box,.time-box{background:color-mix(in srgb,var(--bg) 72%,#fff);border:1px solid var(--border);border-radius:11px;padding:13px 15px}
.contact-box p{margin:3px 0;font-size:.88rem}
.result-card .contact-box{margin-top:16px}
.status-link-box{background:#f2ecdd;border:1px solid #d8c9ac;border-radius:14px;padding:17px;color:#365b43;overflow-wrap:anywhere}
.status-link-box>strong{display:block;font-size:1.08rem;font-weight:900}.status-link-box p{font-weight:750;margin:5px 0 12px;line-height:1.45}
.status-link-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.status-link-row a,.status-link-row span{color:var(--success);font-weight:850;min-width:0;overflow-wrap:anywhere}.copy-status-link{border:2px solid var(--success);background:transparent;color:var(--success);border-radius:9px;padding:8px 11px;font-weight:850;cursor:pointer;white-space:nowrap}
.trust-box{display:grid;grid-template-columns:auto 1fr;gap:11px}
.trust-box p{margin:3px 0 0;color:var(--muted);line-height:1.45}
.check-icon{color:var(--accent);border:1px solid var(--accent);border-radius:50%;width:25px;height:25px;display:grid;place-items:center}
.payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}
.choice-card.compact{grid-template-columns:auto 1fr;padding:10px 12px}
.confirmation-row{display:grid;grid-template-columns:1fr;gap:10px;align-items:start;margin:8px 0 0}.terms{display:flex;align-items:flex-start;gap:8px;margin:0}.terms span{min-width:0}.spam-check{display:flex;align-items:center;gap:8px;white-space:normal;width:max-content;max-width:100%}.spam-check input{width:74px;padding:9px 10px;text-align:center}
.final-button{width:100%;font-size:1.1rem;padding:14px}
.form-message{min-height:1.35em;color:var(--danger);font-weight:750;text-align:center;margin:0}
.safe-order{text-align:center;color:var(--muted)}
.safe-order strong{color:var(--text)}
.safe-order p{font-size:.85rem;line-height:1.45;margin:5px 0 0}
.desktop-summary{padding:24px;position:sticky;top:16px;display:grid;gap:14px}
.desktop-summary h2{font-size:1.25rem;margin:0}
.desktop-summary h3{font-size:2rem;letter-spacing:.08em;margin:0;white-space:nowrap;max-width:100%}
#desktopSummaryNumber{white-space:normal;overflow-wrap:anywhere;line-height:1.15;min-width:0}
.summary-detail{border-bottom:1px solid var(--line);padding-bottom:14px}
.benefit{margin:0}.benefit::first-letter{color:var(--accent)}
.desktop-summary .primary{width:100%;margin-top:8px}
.order-result{display:grid;gap:18px}
.order-result[hidden]{display:none}
.result-header{align-items:flex-start}
.result-header h1{margin-bottom:6px}
.result-header p{color:var(--muted);margin:0}
.result-card{padding:20px}
.result-card h2,.result-card h3{margin-bottom:8px}
.result-card>p:last-child{margin-bottom:0}
.result-layout{margin-top:4px}
.status-timeline{list-style:none;padding:0;margin:18px 0;counter-reset:status;display:grid;gap:9px}
.status-timeline li{counter-increment:status;display:grid;grid-template-columns:27px 1fr;gap:10px;align-items:center}
.status-timeline li::before{content:counter(status);width:25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}
.status-timeline li.done::before{content:'✓';background:var(--accent);color:#fff;border-color:var(--accent)}
.status-timeline li.active{font-weight:800}.status-timeline li.active::before{background:var(--accent);color:#fff;border-color:var(--accent)}
.time-box{color:var(--text)}.sms-ready-note{color:var(--success);font-weight:800}
.compact-trust{display:block}
.order-id{display:block;font-size:1.35rem;margin:8px 0 18px}
.order-reference{color:var(--muted);font-size:.85rem}
.status-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:18px;align-items:start}.status-page-grid main{display:grid;gap:18px}.status-side{position:sticky;top:16px}.status-number{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(2rem,6vw,3.2rem);font-weight:750;font-variant-numeric:lining-nums tabular-nums;letter-spacing:.035em;white-space:nowrap}.status-page-timeline{margin-bottom:0}.payment-information p{margin:7px 0}.payment-details{display:grid;grid-template-columns:minmax(130px,.6fr) minmax(0,1fr);gap:8px 16px;margin:14px 0 0}.payment-details dt{color:var(--muted)}.payment-details dd{margin:0;font-weight:800;overflow-wrap:anywhere}.status-error{color:var(--danger);font-weight:850;margin-top:18px}.status-mode .order-header{display:none}
.invoice-download{display:inline-flex;width:auto;margin-top:14px;text-decoration:none;align-items:center;justify-content:center}
.vipps-payment-form{display:block;margin:14px 0 4px}.vipps-payment-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-width:210px}.vipps-smile{position:relative;width:28px;height:24px;flex:0 0 auto}.vipps-smile::before{content:"";position:absolute;right:4px;top:1px;width:5px;height:5px;border-radius:50%;background:var(--accent)}.vipps-smile::after{content:"";position:absolute;left:3px;top:5px;width:21px;height:12px;border:3px solid var(--accent);border-top:0;border-left-color:transparent;border-right-color:transparent;border-radius:0 0 70% 55%;transform:rotate(-13deg)}
@media(max-width:980px) and (min-width:761px){.number-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .shell{width:calc(100% - 28px);padding:6px 0 48px}
  .desktop-layout{grid-template-columns:1fr;gap:14px}
  .desktop-summary{display:none}
  .process-heading{display:none}
  .accordion-header{padding:14px}
  .accordion-content{padding:0 8px 10px}
  .step1-quick-price{margin:0 8px 10px;padding:10px}
  .number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .number-card{padding:10px;gap:5px}.number-card h3{font-size:clamp(1.03rem,5vw,1.35rem)}
  .summary-number-row{align-items:flex-start;min-width:0}.summary-number-row>div{min-width:0}.summary-price{flex:0 0 auto}
  .confirmation-row{grid-template-columns:1fr}.spam-check{display:flex;white-space:normal}
  .form-fields{grid-template-columns:1fr}
  .form-fields>*{grid-column:1!important}
  .result-layout .desktop-summary{display:grid;position:static;order:-1}
  .status-page-grid{grid-template-columns:1fr}.status-side{position:static;order:-1}.status-link-row{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .order-header{margin-bottom:14px}
  .order-header h1{font-size:1.65rem}
  .mobile-summary{padding:16px}
  .mobile-summary h2{font-size:1.9rem}
  .summary-price{font-size:1.05rem}
  .number-grid{grid-template-columns:1fr 1fr;gap:8px}
  .number-card{padding:9px;gap:5px}
  .filters{flex-wrap:wrap;overflow:visible;padding-bottom:0}
  .filter{flex:0 1 auto;padding:8px 11px;white-space:normal}
  .selected-number-row{display:grid;grid-template-columns:1fr auto}.selected-number-row .outline-button{grid-column:1/-1}
  .payment-options{grid-template-columns:1fr}
  .choice-card{padding:11px}
  .input-action button{padding-left:11px;padding-right:11px}
}
@media(max-width:370px){
  .number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .number-card h3{font-size:.93rem;letter-spacing:.015em;gap:.12em}
  .number-card .price{font-size:.93rem}
  .number-card .outline-button{padding:8px 6px}
}

.site-header{background:#fff;border-bottom:1px solid #e6e1d7}
.site-header-inner,.site-footer-inner{width:min(1180px,calc(100% - 28px));margin:auto}
.site-header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.site-logo{display:inline-flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.045em;font-size:1.53rem;color:var(--text);text-decoration:none}
.brand-mark{display:block;flex:0 0 auto;width:36px;height:38px;background-color:#815542;background-image:url('/gullnumre-logo.png');background-size:100% 100%;background-repeat:no-repeat;background-blend-mode:screen;mix-blend-mode:multiply}
.brand-name{font-family:Georgia,"Times New Roman",serif;color:inherit}
.brand-name small{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.58em;font-weight:750;letter-spacing:-.01em;color:#956b52}
.site-nav{display:flex;align-items:center;gap:22px}
.site-nav a{color:var(--text);text-decoration:none;font-weight:750}
.site-nav a:hover,.site-nav a.active{color:var(--accent-dark)}
.site-footer{margin-top:42px;background:#fff;border-top:1px solid #e6e1d7}
.site-footer-inner{min-height:132px;padding:28px 0;display:flex;align-items:flex-start;justify-content:space-between;gap:28px}
.site-footer p{margin:5px 0 0;color:var(--muted);line-height:1.55}
.site-footer nav{display:flex;gap:20px;flex-wrap:wrap}
.site-footer a{color:var(--text);font-weight:700;text-decoration:none}
.site-footer a:hover{color:var(--accent-dark)}
@media(max-width:620px){
  .site-header-inner{min-height:64px}
  .site-nav{gap:14px;font-size:.92rem}
  .site-footer-inner{display:grid;min-height:0}
}

.site-header{background:#f2eadf;border-color:#e5dacb}
.site-footer{background:#eae0d2;border-color:#ddcdbb}
.site-nav a,.site-footer a{color:#544536}
.site-nav a:hover,.site-nav a.active,.site-footer a:hover{color:#9b5c42}
.site-footer p{color:#76695e}
.minihero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:16px;min-height:158px;margin:5px 0 18px;padding:18px 32px;border:1px solid #e6d9c8;border-radius:22px;overflow:hidden;background:linear-gradient(115deg,#f3eadb 0%,#faf4e9 68%,#e8dac7 100%)}
.minihero::before{content:"";position:absolute;z-index:-1;inset:auto -80px -165px auto;width:420px;height:320px;border-radius:50%;background:radial-gradient(circle,#cfaa85aa,transparent 70%)}
.minihero .eyebrow{color:#955c47;font-size:.7rem;margin-bottom:7px}
.minihero h1{font-size:clamp(1.6rem,3.2vw,2.35rem);line-height:1.15;letter-spacing:-.04em;margin:0 0 8px;color:#3d3028}
.minihero h1 em{font-style:normal;color:#a26950}
.minihero-copy>p:not(.eyebrow){color:#554a40;font-size:1rem;margin:0 0 8px}
.minihero-copy .minihero-cta strong{display:inline-block;margin-left:.3em;padding:.17em .52em;border:1px solid #dfcbb9;border-radius:5px;background:#eadfd1;color:#815540;font-size:.9em;font-weight:730;white-space:nowrap}
.minihero-payment{font-size:.86rem;font-weight:720;color:#6f5846}
.minihero-art{height:122px;position:relative;display:grid;place-items:center}
.art-orbit{position:absolute;width:250px;height:102px;border:1px solid #b7846899;border-radius:50%;transform:rotate(-21deg)}
.art-ticket{position:relative;display:flex;gap:7px;align-items:center;padding:15px 18px;border:1px solid #d4b9a3;border-radius:15px;background:#fffbf3;box-shadow:0 14px 30px #68452c2b;transform:rotate(-7deg)}
.art-ticket i{font:750 1.65rem/1 Inter,ui-sans-serif,system-ui,sans-serif;font-style:normal;letter-spacing:-.06em;font-variant-numeric:lining-nums tabular-nums;color:#a36348}
.art-ticket i:nth-child(2){color:#4b3930}
.art-cursor{position:absolute;bottom:-15px;right:13px;width:16px;height:22px;background:#a4664c;clip-path:polygon(0 0,100% 75%,55% 75%,38% 100%,0 0)}
.art-spark{position:absolute;font-size:1.65rem;color:#b6815d}.art-spark-one{top:10px;right:25px}.art-spark-two{bottom:5px;left:20px;font-size:1rem}
.order-header h2{margin:0;font-size:1.5rem}
.status-mode .minihero{display:none}
@media(max-width:700px){.minihero{grid-template-columns:minmax(0,1fr) 105px;padding:16px 18px;min-height:164px;gap:4px}.minihero-art{transform:scale(.64);transform-origin:center}.minihero h1{font-size:clamp(1.46rem,5vw,1.9rem)}}
@media(max-width:480px){.minihero{grid-template-columns:1fr;min-height:0;padding:17px 20px}.minihero-art{display:none}.minihero-copy>p:not(.eyebrow){font-size:.94rem}.site-logo{font-size:1.25rem}.brand-mark{width:30px;height:32px}.site-nav{gap:12px;font-size:.85rem}}
.payment-options{grid-template-columns:1fr}
.choice-card.compact{align-items:start}
.choice-card.compact>span{display:grid;gap:3px}
.order-status-banner{background:#fff7dc;border:1px solid #dfc078;border-radius:14px;padding:16px 18px}
.order-status-banner strong{display:block;font-size:1.06rem;margin-bottom:4px}
.order-status-banner p{margin:0;line-height:1.5}
.order-status-banner.success{background:#edf8f0;border-color:#b9dbc2}
.order-status-banner.error{background:#fff0f0;border-color:#ddb4b4}

.test-mode-banner{max-width:1180px;margin:12px auto 0;padding:12px 16px;border:2px solid #b45309;border-radius:12px;background:#fff7ed;color:#7c2d12;display:flex;gap:12px;align-items:center;justify-content:center}
.test-mode-banner strong{letter-spacing:.08em}
@media(max-width:620px){.test-mode-banner{margin-left:14px;margin-right:14px;align-items:flex-start;flex-direction:column;gap:3px}}
.number-card .number-image{display:block;width:100%;max-width:320px;height:54px;object-fit:contain;object-position:left center;user-select:none;pointer-events:none}
/* Compact catalog spacing and calmer supporting line in the hero. */
.minihero h1 em{display:inline-block;font-size:.67em;line-height:1.25;letter-spacing:-.025em}
.number-card{padding-top:6px;row-gap:2px}
.number-card .number-image{height:44px}
.number-card .price{margin-top:-1px}
@media(max-width:520px){.number-card{padding-top:5px;row-gap:2px}.number-card .number-image{height:48px}}
.minihero{width:100%;max-width:none;min-height:154px;margin:0 0 18px;border-left:0;border-right:0;border-radius:0;padding-inline:max(24px,calc((100vw - 1116px)/2));}
.number-card .number-image{height:52px;max-width:350px}
.number-card{background:#fff7ed;border-color:#c4936b}
.number-card .select-number{border-color:#dbc5b4;background:#fffaf5}
.number-card .select-number:hover{border-color:#c4936b;background:#fff1e1}
.payment-heading{display:inline-flex;align-items:center;gap:9px}.payment-heading .vipps-smile{transform:scale(.82);transform-origin:center}
.payment-extra{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#faf7f1}
.payment-extra[hidden]{display:none!important}.payment-extra textarea{width:100%;resize:vertical;min-height:76px;font:inherit}
.payment-extra select,.payment-extra textarea{border:1px solid var(--line);border-radius:9px;padding:12px;background:#fff;color:var(--text)}
.payment-extra select{width:100%;font:inherit}
.payment-extra select:focus-visible,.payment-extra textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 28%,transparent)}
@media(max-width:700px){.minihero{padding-inline:18px}}

/* 0.5.25: compact cards and collapsible pattern selection */
.number-card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-top:2px}
.number-card-actions .price{margin:0;white-space:nowrap}
.number-card-actions .select-number{width:auto;min-width:64px;padding:7px 12px;margin:0;flex-shrink:0;font-size:.86rem}
.pattern-details{margin:0 0 12px;border-bottom:1px solid var(--line);padding:0 2px 8px}
.pattern-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;color:var(--muted);font-size:.84rem;font-weight:700;padding:5px 3px}
.pattern-details summary::-webkit-details-marker{display:none}
.pattern-details[open] summary{margin-bottom:9px;color:var(--text)}
.pattern-details[open] .pattern-summary-indicator{transform:rotate(180deg)}
.pattern-details .filters{padding:5px 0}
@media(max-width:480px){.number-card-actions .select-number{min-width:54px;padding:6px 9px;font-size:.82rem}.number-card-actions{gap:4px}}

/* 0.5.26: compact, tactile filter toggle */
.pattern-details{border-bottom:0;padding:0 0 6px}
.pattern-details summary{display:inline-flex;justify-content:flex-start;gap:10px;width:auto;max-width:100%;padding:7px 12px;border:1px solid var(--line);border-radius:9px;background:#faf7f1;color:var(--text);font-size:.76rem;letter-spacing:.065em;transition:background .15s,border-color .15s}
.pattern-details summary:hover,.pattern-details summary:focus-visible{background:#f1e8d9;border-color:var(--accent)}
.pattern-details .pattern-summary-indicator{font-size:.9rem}

/* 0.5.29: nostalgisk telefonkiosk i forsidehero.
   Illustrasjonen er plassert mot bunnen, slik at personer og kiosk står på den samme gulvkanten.
   Ingen endring i skjema, kort eller bestillingslogikk. */
.minihero {
  grid-template-columns: minmax(0, 1fr) minmax(335px, 485px);
  min-height: 210px;
  padding-top: 19px;
  padding-bottom: 0;
  gap: 12px;
}
.minihero-copy { position: relative; z-index: 1; padding-bottom: 15px; }
.minihero-art {
  position: relative;
  align-self: end;
  width: 100%;
  height: auto;
  min-height: 0;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  transform: none;
  pointer-events: none;
}
.minihero-illustration {
  display: block;
  width: 100%;
  height: auto;
  max-height: 205px;
  object-fit: contain;
  object-position: center bottom;
  mix-blend-mode: multiply;
}
@media (max-width: 960px) {
  .minihero { grid-template-columns: minmax(0,1fr) minmax(220px,36%); min-height: 180px; }
  .minihero-illustration { max-height: 170px; }
}
@media (max-width: 700px) {
  .minihero { grid-template-columns: minmax(0,1fr) minmax(140px,31%); min-height: 160px; gap: 8px; }
  .minihero-art { transform: none; }
  .minihero-illustration { max-height: 150px; }
}
@media (max-width: 480px) {
  /* På smale skjermer prioriteres lesbar tekst og raskt valg av nummer. */
  .minihero { grid-template-columns: 1fr; min-height: 0; padding-bottom: 17px; }
  .minihero-art { display: none; }
  .minihero-copy { padding-bottom: 0; }
}

/* 0.5.30: Illustrasjon med ekte alfakanal. Ingen egen bildeflate.
   Gulvskyggen ligger i motivets gjennomsiktige PNG. */
.minihero::before { display: none; }
.minihero-illustration { mix-blend-mode: normal; }

/* 0.5.33: valgt nummer forblir synlig selv om første panel lukkes */
#step1 > .selected-number-row { margin: 0 18px 15px; }
#step1.has-selected .step1-quick-price { display: none; }
/* Kompakte prisvalg, tilpasset hele raden på små skjermer */
#priceFilters { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 5px; }
#priceFilters .filter { min-width: 0; white-space: nowrap; padding: 8px 5px; font-size: clamp(.69rem, 1.7vw, .9rem); }
@media(max-width:760px) {
  #step1 > .selected-number-row { margin: 0 8px 10px; }
}
@media(max-width:370px) {
  #priceFilters { gap: 3px; }
  #priceFilters .filter { padding-inline: 2px; font-size: .68rem; }
}

/* 0.5.34: Mobilvisning skal aldri kunne utvide énkolonne-nettet.
   Grid-barn kan ellers presse 1fr forbi tilgjengelig bredde. */
@media (max-width:760px) {
  .desktop-layout { grid-template-columns:minmax(0,1fr); }
  .order-panel, #orderFormView, .desktop-layout, .process-column, .accordion,
  .accordion-content, .step1-quick-price, #numberPicker, .number-grid { min-width:0; max-width:100%; }
  .number-card, .number-card-actions { min-width:0; }
  .number-card .number-image { max-width:100%; }
  .minihero { min-width:0; max-width:100%; }
}
/* Nettleserbredden skal ikke få en horisontal rulleflate på forsiden.
   Dette er en ekstra sikring, ikke en erstatning for grid-rettelsen. */
body:not(.insight-page) { overflow-x:clip; }
/* Litt større prisfiltre uten at fem knapper trenger mer total bredde. */
#priceFilters .filter { font-size:clamp(.75rem, 1.9vw, .94rem); padding-inline:2px; }
@media(max-width:370px) {
  #priceFilters .filter { font-size:clamp(.70rem,3.15vw,.78rem); padding-inline:1px; }
}

/* 0.5.39: Informasjon under Privat/Bedrift-valget */
#transferInfo{margin:0 0 16px;font-size:.92rem;line-height:1.62;color:#365b43;font-weight:500;max-width:100%;overflow-wrap:anywhere}
#transferInfo a{color:#27573d;font-weight:750;text-decoration:underline;text-underline-offset:2px}
#transferInfo [hidden]{display:none!important}

/* 0.5.42: clarify verification and distinguish instructions on B2B status page */
#desktopSummaryNumber.number-placeholder {font-size:1.08rem;letter-spacing:0;}
.spam-check {padding:10px 12px;border:2px solid var(--border);border-radius:12px;background:rgba(255,255,255,.45)}
.spam-check:focus-within {border-color:var(--accent, #987643)}
.spam-check input {border:2px solid var(--border);font-weight:700}
.status-business-instructions {border:1px solid var(--border);border-radius:12px;padding:17px 20px;margin:0 0 16px;background:var(--surface,#fffaf2)}
.status-business-instructions strong {display:block;margin-bottom:7px}
.status-business-instructions p {margin:0;line-height:1.6}

/* 0.5.43: tydeligere fortsettelse i nummerlisten */
#showMoreNumbers.more-numbers-button {border:1.5px solid var(--accent-dark);border-radius:12px;background:var(--card);color:var(--accent-dark);padding:12px 24px;text-decoration:none;box-shadow:0 3px 10px rgba(0,0,0,.07);font-weight:800;transition:background .15s, box-shadow .15s}
#showMoreNumbers.more-numbers-button:hover,#showMoreNumbers.more-numbers-button:focus-visible {background:color-mix(in srgb,var(--accent-dark) 9%,var(--card));box-shadow:0 4px 14px rgba(0,0,0,.12)}

/* 0.5.45: visible checkout consent and arithmetic answer on all screens. */
.confirmation-row .terms{gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--card);cursor:pointer;min-height:52px}
.confirmation-row .terms input[type="checkbox"]{appearance:auto;flex:0 0 28px;width:28px;height:28px;min-width:28px;margin:0;accent-color:var(--accent-dark)}
.confirmation-row .terms:has(input:checked){border-color:var(--accent-dark)}
.confirmation-row .spam-check input{border:2px solid #8a6540;background:#fffdf8;border-radius:8px;min-width:84px;min-height:48px;color:#2d2924;font-size:18px}
.confirmation-row .spam-check input:focus{border-color:#5e3b23;outline:3px solid #d9bd8b;outline-offset:2px}

/* 0.5.46: slightly larger main headline; slogan keeps its existing size. */
.minihero h1 .minihero-title-line{font-size:1.16em;line-height:1.15}
