/* Rose and Thorn: instant price, Golden Hour glass edition (Nov 2026).
   Restyles the existing #price-estimator card. growth.js still does all the maths;
   estimator-glass.js only draws tap-to-pick buttons that set the original form. */
#plan .rt-estimator.ghq-on{
  --q-honey:#e19a45;--q-amber:#f6c372;--q-cream:#fff4e3;--q-soft:#e9d5bb;--q-dim:#bda68a;
  --q-bg:#22160c;--q-glass:rgba(255,236,206,.07);--q-line:rgba(255,226,180,.16);
  position:relative;isolation:isolate;max-width:1080px;margin:auto;padding:clamp(22px,3.6vw,40px);
  border:1px solid rgba(246,195,114,.28);border-radius:30px;color:var(--q-cream);overflow:clip;
  background:
    radial-gradient(620px 340px at 92% -8%,rgba(246,170,80,.36),transparent 64%),
    radial-gradient(520px 300px at -6% 108%,rgba(205,110,52,.26),transparent 62%),
    radial-gradient(rgba(255,255,255,.03) 1px,transparent 1.5px) 0 0/6px 6px,
    linear-gradient(160deg,#2c1d10,#1d130a 58%,#26170b);
  box-shadow:0 30px 70px -28px rgba(60,30,8,.75),inset 0 1px 0 rgba(255,240,215,.14)}
#plan .rt-estimator.ghq-on::after{content:"";position:absolute;inset:auto -10% -40% 30%;height:60%;z-index:-1;pointer-events:none;
  background:radial-gradient(closest-side,rgba(246,180,95,.16),transparent);filter:blur(10px)}
#plan .ghq-on .rt-card-kicker{color:var(--q-amber);letter-spacing:2.6px}
#plan .ghq-on h3{color:var(--q-cream);font-size:clamp(30px,4vw,44px);margin:6px 0 4px}
#plan .ghq-on .ghq-lede{margin:0 0 26px;color:var(--q-soft);font:15px/1.55 Arial,sans-serif}
#plan .ghq-on .rt-est-form{display:none!important}

.ghq{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:28px;align-items:start}
.ghq-steps{display:grid;gap:26px;min-width:0}
.ghq-q{min-width:0}
.ghq-h{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:700 13px/1.2 Arial,sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--q-soft)}
.ghq-h b{width:26px;height:26px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:12px;letter-spacing:0;color:#2a1808;
  background:linear-gradient(180deg,var(--q-amber),var(--q-honey));box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 4px 12px -3px rgba(225,154,69,.8)}
.ghq-h small{margin-left:auto;font-weight:400;letter-spacing:0;text-transform:none;color:var(--q-dim)}

/* glass buttons */
.ghq-g{appearance:none;-webkit-appearance:none;position:relative;font:inherit;color:var(--q-cream);cursor:pointer;text-align:left;
  border:1px solid var(--q-line);border-radius:18px;background:var(--q-glass);
  backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,245,228,.12),0 6px 18px -10px rgba(0,0,0,.7);
  transition:transform .18s cubic-bezier(.3,1.4,.5,1),background .2s,border-color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
.ghq-g:hover{background:rgba(255,236,206,.11);border-color:rgba(246,195,114,.35)}
.ghq-g:active{transform:scale(.96)}
.ghq-g:focus-visible{outline:2px solid var(--q-amber);outline-offset:3px}
.ghq-g[aria-pressed=true]{border-color:rgba(255,214,150,.8);color:#2a1808;
  background:linear-gradient(180deg,rgba(255,214,150,.97),rgba(225,154,69,.95));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -8px 16px -10px rgba(140,70,15,.55),0 10px 26px -8px rgba(232,150,60,.75)}

/* floor tiles */
.ghq-floors{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.ghq-floor{display:grid;grid-template-rows:auto auto 1fr;gap:3px;padding:10px 10px 12px;min-height:150px}
.ghq-floor i{display:block;height:58px;border-radius:11px;margin-bottom:7px;border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(0,0,0,.1),inset 0 -10px 20px -14px rgba(0,0,0,.5)}
.ghq-floor strong{font:700 15px/1.2 Arial,sans-serif}
.ghq-floor span{font:12.5px/1.35 Arial,sans-serif;opacity:.78}
.ghq-floor[aria-pressed=true] span{opacity:.85}
.ghq-floor[aria-pressed=true]::after{content:"";position:absolute;top:16px;right:16px;width:22px;height:22px;border-radius:50%;
  background:#2a1808 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f6c372' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat;
  box-shadow:0 0 0 2px rgba(255,236,200,.85)}
/* Match the photographic flooring samples in the service cards. */
.ghq-floor i{height:86px;background-image:url('/materials.webp');background-size:500% 100%;background-repeat:no-repeat}
.ghq-sw-laminate{background-position:50% center}
.ghq-sw-vinyl{background-position:25% center}
.ghq-sw-engineered,.ghq-sw-engineeredGlue,.ghq-sw-solid{background-position:0% center}

/* size */
.ghq-size{display:grid;gap:12px;padding:16px;border-radius:22px;border:1px solid var(--q-line);background:rgba(0,0,0,.18)}
.ghq-dial{display:flex;align-items:center;gap:12px}
.ghq-round{width:52px;height:52px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:26px;line-height:1;text-align:center;padding:0}
.ghq-num{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:8px}
.ghq-num input{width:100%;max-width:5.2ch;min-width:0;border:0;background:none;color:var(--q-cream);text-align:right;padding:0;
  font:400 clamp(40px,6vw,58px)/1 Georgia,serif;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}
.ghq-num input::-webkit-inner-spin-button,.ghq-num input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.ghq-num input:focus{outline:none;text-shadow:0 0 18px rgba(246,195,114,.55)}
.ghq-num span{font:700 13px/1 Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;color:var(--q-dim);white-space:nowrap}
.ghq-range{--p:20%;-webkit-appearance:none;appearance:none;width:100%;height:30px;margin:0;background:none;cursor:pointer}
.ghq-range::-webkit-slider-runnable-track{height:8px;border-radius:8px;background:linear-gradient(90deg,var(--q-amber),var(--q-honey) var(--p),rgba(255,236,206,.14) var(--p))}
.ghq-range::-moz-range-track{height:8px;border-radius:8px;background:linear-gradient(90deg,var(--q-amber),var(--q-honey) var(--p),rgba(255,236,206,.14) var(--p))}
.ghq-range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-10px;border-radius:50%;border:1px solid rgba(255,255,255,.7);
  background:radial-gradient(circle at 35% 30%,#fff7e8,#f3c27a 60%,#d98d3a);box-shadow:0 4px 14px rgba(225,140,50,.7)}
.ghq-range::-moz-range-thumb{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:radial-gradient(circle at 35% 30%,#fff7e8,#f3c27a 60%,#d98d3a);box-shadow:0 4px 14px rgba(225,140,50,.7)}
.ghq-range:focus-visible{outline:2px solid var(--q-amber);outline-offset:4px;border-radius:8px}
.ghq-presets{display:flex;flex-wrap:wrap;gap:8px}
.ghq-presets .ghq-g{border-radius:999px;padding:9px 14px;font:600 13px/1.2 Arial,sans-serif}
.ghq-presets .ghq-g small{font-weight:400;opacity:.75;margin-left:4px}
.ghq-hint{margin:0;font:12.5px/1.45 Arial,sans-serif;color:var(--q-dim)}

/* simple choice rows */
.ghq-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.ghq-choice{padding:13px 14px;display:grid;gap:2px;min-height:62px;align-content:center}
.ghq-choice strong{font:700 14.5px/1.25 Arial,sans-serif}
.ghq-choice span{font:12.5px/1.3 Arial,sans-serif;opacity:.75}

/* stairs */
.ghq-stairs{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ghq-stepper{display:inline-flex;align-items:center;gap:6px;padding:6px;border-radius:999px;border:1px solid var(--q-line);background:rgba(0,0,0,.18)}
.ghq-stepper .ghq-round{width:44px;height:44px;font-size:22px}
.ghq-stepper output{min-width:3ch;text-align:center;font:400 30px/1 Georgia,serif;font-variant-numeric:tabular-nums}
.ghq-stairs-label{font:14px/1.4 Arial,sans-serif;color:var(--q-soft)}
.ghq-stair-more{display:grid;gap:12px;margin-top:14px;padding:14px;border-radius:20px;border:1px dashed rgba(246,195,114,.3);animation:ghqIn .35s ease both}
.ghq-stair-more[hidden]{display:none}
@keyframes ghqIn{from{opacity:.4;transform:translateY(-6px)}}

/* extras */
.ghq-toggles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.ghq-toggle{display:flex;align-items:center;gap:12px;padding:12px 14px}
.ghq-toggle strong{font:600 14px/1.3 Arial,sans-serif;flex:1}
.ghq-switch{width:46px;height:28px;flex:none;border-radius:999px;position:relative;background:rgba(255,236,206,.16);transition:background .2s}
.ghq-switch::after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff3e0;box-shadow:0 2px 6px rgba(0,0,0,.4);transition:transform .22s cubic-bezier(.3,1.4,.5,1)}
.ghq-toggle[aria-pressed=true] .ghq-switch{background:#3a220e}
.ghq-toggle[aria-pressed=true] .ghq-switch::after{transform:translateX(18px);background:var(--q-amber)}

/* price panel */
.ghq-price{position:sticky;top:92px;padding:24px;border-radius:26px;border:1px solid rgba(246,195,114,.32);
  background:linear-gradient(170deg,rgba(255,226,180,.13),rgba(255,226,180,.04));
  backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);
  box-shadow:inset 0 1px 0 rgba(255,245,228,.2),0 20px 44px -22px rgba(0,0,0,.8)}
.ghq-price-label{margin:0;font:700 11px/1.2 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase;color:var(--q-amber)}
.ghq-total{margin:8px 0 10px;font:400 clamp(30px,3.1vw,40px)/1.05 Georgia,serif;white-space:nowrap;font-variant-numeric:tabular-nums;color:#fff6e8;
  text-shadow:0 0 28px rgba(246,180,95,.35);transition:transform .25s}
.ghq-total.ghq-bump{transform:scale(1.035)}
.ghq-total.is-empty{font-size:22px;line-height:1.35;color:var(--q-soft);text-shadow:none}
.ghq-sum{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0;list-style:none}
.ghq-sum li{font:600 12px/1 Arial,sans-serif;padding:7px 10px;border-radius:999px;background:rgba(255,236,206,.1);border:1px solid var(--q-line);color:var(--q-soft)}
.ghq-price .rt-est-result{margin:0;padding:0;border:0}
.ghq-price .rt-est-label,.ghq-price .rt-est-total,.ghq-price .rt-est-empty{display:none}
.ghq-price .rt-est-cta,.ghq-price .rt-est-soon+.button{width:100%;justify-content:center;min-height:54px;border-radius:16px!important;font-size:16px!important}
.ghq-price .rt-est-note{margin:14px 0 0;font:12px/1.5 Arial,sans-serif;color:var(--q-dim)}
.ghq-price .ghq-alt{display:block;margin-top:12px;text-align:center;font:600 14px/1.4 Arial,sans-serif;color:var(--q-amber);text-decoration:none}
.ghq-price .ghq-alt:hover{text-decoration:underline}
.ghq-mini{display:none}

@media (max-width:860px){
  .ghq{grid-template-columns:1fr}
  .ghq-price{position:relative;top:auto}
  /* a floating price pill while the questions are on screen */
  .ghq-mini{position:fixed;z-index:60;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,20px);opacity:0;pointer-events:none;
    display:flex;align-items:center;gap:12px;padding:10px 10px 10px 18px;border-radius:999px;max-width:calc(100vw - 32px);box-sizing:border-box;
    border:1px solid rgba(246,195,114,.45);background:rgba(34,22,12,.82);color:#fff6e8;
    backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);
    box-shadow:0 14px 34px -10px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,240,215,.18);transition:opacity .25s,transform .25s}
  .ghq-mini.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
  .ghq-mini b{font:400 20px/1 Georgia,serif;font-variant-numeric:tabular-nums;white-space:nowrap}
  .ghq-mini button{border:0;border-radius:999px;padding:10px 14px;font:700 13px/1 Arial,sans-serif;color:#2a1808;cursor:pointer;white-space:nowrap;
    background:linear-gradient(180deg,#ffd896,#e19a45);box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
}
@media (max-width:520px){
  #plan .rt-estimator.ghq-on{border-radius:24px;padding:20px 14px}
  .ghq-floors{grid-template-columns:1fr 1fr;gap:8px}
  .ghq-floor{min-height:0;padding:8px 8px 11px}
  .ghq-floor i{height:44px}
  .ghq-floor strong{font-size:14px}
  .ghq-floor[aria-pressed=true]::after{top:13px;right:13px}
  .ghq-floor:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:96px 1fr;grid-template-rows:auto 1fr;column-gap:12px;align-items:center}
  .ghq-floor:last-child:nth-child(odd) i{grid-row:1/3;height:52px;margin:0}
  .ghq-choices{grid-template-columns:1fr 1fr}
  .ghq-round{width:46px;height:46px}
  .ghq-size{padding:14px 12px}
}
@media (prefers-reduced-motion:reduce){.ghq-g,.ghq-total,.ghq-mini,.ghq-switch::after{transition:none}.ghq-stair-more{animation:none}}
/* Existing surfaces can share a room; removal is priced by the chosen percentages. */
.ghq-removal-mix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ghq-mix-card{min-width:0;border:1px solid #b8a17b50;background:#ffffff09;border-radius:18px;overflow:hidden}
.ghq-mix-pick{width:100%;min-height:100px;padding:14px 12px;border:0!important;border-radius:0!important;text-align:left}
.ghq-mix-pick strong,.ghq-mix-pick span{display:block}.ghq-mix-pick span{font-size:11px;line-height:1.4;margin-top:5px;opacity:.8}
.ghq-mix-gauge{padding:10px 12px 16px}.ghq-mix-gauge output{display:block;color:#f7ce87;font:600 25px/1.3 Georgia,serif;margin-bottom:9px}
.ghq-mix-gauge input[type=range]{display:block;width:100%;min-width:0;min-height:30px;height:30px;margin:0;padding:0;border:0;background:transparent;accent-color:#e9b264;cursor:ew-resize;touch-action:pan-y}
@media(max-width:600px){.ghq-removal-mix{grid-template-columns:1fr}.ghq-mix-card{display:grid;grid-template-columns:1fr 45%;align-items:center}.ghq-mix-pick{min-height:82px}.ghq-mix-gauge{padding:12px 16px}.ghq-mix-gauge output{font-size:23px;margin-bottom:2px}}

/* Phones: fast taps on − / + must count, not zoom the page (iOS double-tap zoom). Flight button adds a whole flight. */
#plan .ghq,#plan .ghq button,#plan .ghq input{touch-action:manipulation}
#plan .ghq button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.ghq-flight{border-radius:999px!important;padding:11px 16px;font:700 14px/1.2 Arial,sans-serif;white-space:nowrap}
.ghq-flight small{font-weight:400;opacity:.75;margin-left:4px}

/* Cutaway samples reveal construction instead of showing another finished room. */
.ghq-floor i{height:auto;aspect-ratio:3/2;background-size:contain;background-position:center;background-color:#f6ecdf}
.ghq-floor .ghq-sw-solid{background-image:url('/floor-cutaway-solid.jpg')}
.ghq-floor .ghq-sw-engineered,.ghq-floor .ghq-sw-engineeredGlue{background-image:url('/floor-cutaway-engineered.jpg')}
.ghq-floor .ghq-sw-laminate{background-image:url('/floor-cutaway-laminate.jpg')}
.ghq-floor .ghq-sw-vinyl{background-image:url('/floor-cutaway-vinyl.jpg')}
.ghq-floor .ghq-layers{font:11px/1.4 Arial,sans-serif;opacity:.85;display:block;padding-top:6px;margin-top:5px;border-top:1px solid currentColor}
.ghq-construction-note{font:11px/1.5 Arial,sans-serif;color:var(--q-dim);margin:12px 0 0}
@media(max-width:600px){.ghq-floor i{height:auto;min-height:82px}.ghq-floor:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:112px 1fr;grid-template-rows:auto auto auto}.ghq-floor:last-child:nth-child(odd) i{grid-row:1/4;height:86px;min-height:0}.ghq-floor .ghq-layers{font-size:10.5px}}

/* Definite thumbnail tracks avoid Safari's cyclic intrinsic grid sizing. */
.ghq-floor{min-width:0;grid-template-rows:100px auto auto 1fr;align-content:start}
.ghq-floor i{width:100%;min-width:0;box-sizing:border-box;height:100px;min-height:100px;max-height:100px;aspect-ratio:auto;align-self:start}
@media(max-width:600px){
  .ghq-floor{grid-template-columns:minmax(0,1fr);grid-template-rows:82px auto auto 1fr}
  .ghq-floor i{height:82px;min-height:82px;max-height:82px}
  .ghq-floor:last-child:nth-child(odd){grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto auto auto}
  .ghq-floor:last-child:nth-child(odd) i{height:86px;min-height:86px;max-height:86px}
}
