@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');

.pgpq-immersive-page { margin: 0; background: #171716; }
.pgpq-page-shell { min-height: 100vh; }
.pgpq-root, .pgpq-root * { box-sizing: border-box; }
.pgpq-root { width: 100%; color: var(--pgpq-paper, #f1ede5); font-family: "DM Sans", sans-serif; }
.pgpq-app { --pgpq-bg:#171716; --pgpq-paper:#f1ede5; --pgpq-accent:#b87337; --pgpq-ink:#1a1917; min-height: 100vh; background:var(--pgpq-bg); color:var(--pgpq-paper); position:relative; overflow:hidden; }
.pgpq-app button, .pgpq-app a { font:inherit; }
.pgpq-header { height:94px; padding:24px clamp(24px,5vw,76px); display:flex; justify-content:space-between; align-items:center; position:relative; z-index:5; border-bottom:1px solid rgba(255,255,255,.12); }
.pgpq-brand { color:inherit; text-decoration:none; display:flex; flex-direction:column; letter-spacing:.18em; }
.pgpq-brand strong { font-family:"Playfair Display",serif; font-size:24px; letter-spacing:.12em; line-height:1; }
.pgpq-brand img { display:block; width:auto; max-width:180px; max-height:42px; object-fit:contain; object-position:left center; }
.pgpq-brand span { font-size:8px; margin-top:7px; opacity:.66; text-transform:uppercase; }
.pgpq-step-label { font-size:11px; letter-spacing:.18em; }
.pgpq-intro { min-height:calc(100vh - 94px); display:grid; grid-template-columns:1.02fr .98fr; }
.pgpq-intro__copy { padding:clamp(48px,8vw,120px) clamp(28px,7vw,110px); display:flex; flex-direction:column; justify-content:center; }
.pgpq-eyebrow,.pgpq-kicker { text-transform:uppercase; letter-spacing:.16em; font-size:11px; font-weight:600; color:var(--pgpq-accent); margin:0 0 25px; }
.pgpq-intro h1,.pgpq-question h2,.pgpq-results h2 { font-family:"Playfair Display",serif; font-weight:500; letter-spacing:-.035em; line-height:.96; margin:0; }
.pgpq-intro h1 { max-width:760px; font-size:clamp(52px,6.5vw,104px); }
.pgpq-intro h1::first-line { color:var(--pgpq-paper); }
.pgpq-lead { max-width:610px; font-size:clamp(16px,1.5vw,21px); line-height:1.65; opacity:.72; margin:34px 0; }
.pgpq-button { width:max-content; min-width:245px; border:0; background:var(--pgpq-accent); color:white; padding:19px 24px; display:flex; justify-content:space-between; cursor:pointer; transition:transform .25s,filter .25s; }
.pgpq-button:hover { transform:translateY(-2px); filter:brightness(1.08); }
.pgpq-intro__copy small { margin-top:20px; opacity:.5; letter-spacing:.06em; }
.pgpq-intro__visual { position:relative; min-height:580px; background:var(--pgpq-paper); overflow:hidden; }
.pgpq-intro__visual::after { content:""; position:absolute; inset:0; background:linear-gradient(150deg,transparent 55%,rgba(184,115,55,.23)); pointer-events:none; }
.pgpq-intro__visual img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(.84) contrast(.95); }
.pgpq-orbit { position:absolute; z-index:2; border:1px solid rgba(25,25,23,.35); color:var(--pgpq-ink); border-radius:99px; padding:10px 16px; font-size:11px; backdrop-filter:blur(8px); background:rgba(241,237,229,.55); }
.pgpq-orbit--one { left:8%; top:16%; }.pgpq-orbit--two { right:9%; top:31%; }.pgpq-orbit--three { left:15%; bottom:24%; }
.pgpq-caption { position:absolute; z-index:2; right:0; bottom:0; background:var(--pgpq-accent); width:min(380px,78%); padding:24px 30px; display:flex; flex-direction:column; }
.pgpq-caption span { font-size:10px; text-transform:uppercase; letter-spacing:.14em; opacity:.7; }.pgpq-caption strong { font-family:"Playfair Display",serif; font-size:25px; margin-top:5px; }
.pgpq-question { max-width:1050px; margin:0 auto; padding:clamp(45px,7vw,90px) 28px 90px; }
.pgpq-progress { height:1px; background:rgba(255,255,255,.15); margin-bottom:32px; }.pgpq-progress span { display:block; height:2px; background:var(--pgpq-accent); transition:width .4s; }
.pgpq-back { border:0;background:none;color:inherit;opacity:.55;padding:0;cursor:pointer;margin-bottom:55px; }.pgpq-back:hover{opacity:1}
.pgpq-question h2 { font-size:clamp(42px,5.6vw,82px); max-width:900px; margin-bottom:55px; outline:none; }
.pgpq-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.14); }
.pgpq-option { min-height:145px; padding:28px; border:0; background:var(--pgpq-bg); color:inherit; text-align:left; display:grid; grid-template-columns:40px 1fr 24px; gap:18px; align-items:center; cursor:pointer; transition:background .25s,color .25s,transform .25s; }
.pgpq-option:hover,.pgpq-option.is-selected { background:var(--pgpq-paper); color:var(--pgpq-ink); transform:translateY(-2px); z-index:1; }
.pgpq-option__number { font-size:10px; opacity:.5; }.pgpq-option strong { display:block; font-family:"Playfair Display",serif; font-size:26px; font-weight:500; }.pgpq-option small { display:block; opacity:.56; margin-top:8px; line-height:1.4; }.pgpq-option__arrow{justify-self:end}
.pgpq-reveal { min-height:calc(100vh - 94px); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:32px; text-transform:uppercase; letter-spacing:.16em; font-size:11px; }
.pgpq-reveal__ring { width:115px;height:115px;border:1px solid rgba(255,255,255,.2);border-top-color:var(--pgpq-accent);border-radius:50%;animation:pgpq-spin 1.1s linear infinite; }
.pgpq-results { max-width:1240px; margin:0 auto; padding:clamp(54px,8vw,110px) 28px 100px; }
.pgpq-results__hero { max-width:850px; margin-bottom:75px; }.pgpq-results h2 { font-size:clamp(60px,8vw,116px); outline:none; }.pgpq-results__hero>p:last-child { max-width:680px;font-size:20px;line-height:1.6;opacity:.68; }
.pgpq-primary { display:flex;gap:18px;align-items:center;border-top:1px solid rgba(255,255,255,.17);padding:22px 0;margin-bottom:22px; }.pgpq-choice-number{font-size:11px;opacity:.45}.pgpq-primary div{display:flex;flex-direction:column}.pgpq-primary span{font-size:12px;opacity:.5;margin-top:3px}
.pgpq-product { background:var(--pgpq-paper);color:var(--pgpq-ink);display:grid;grid-template-rows:auto 1fr;min-width:0; }.pgpq-product.is-featured { grid-template-columns:1.1fr .9fr;grid-template-rows:1fr;min-height:590px; }
.pgpq-product__image { position:relative;display:block;min-height:310px;overflow:hidden;background:#ddd6c9; }.pgpq-product__image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s}.pgpq-product:hover img{transform:scale(1.035)}.pgpq-product__image>span{position:absolute;top:20px;left:20px;background:var(--pgpq-bg);color:white;padding:8px 12px;text-transform:uppercase;font-size:9px;letter-spacing:.12em}
.pgpq-product__body { padding:clamp(28px,4vw,58px);display:flex;flex-direction:column;align-items:flex-start; }.pgpq-product__body h3{font-family:"Playfair Display",serif;font-size:clamp(32px,4vw,60px);font-weight:500;line-height:1.03;margin:0 0 14px}.pgpq-price{font-size:20px;font-weight:600}.pgpq-product__body>p:not(.pgpq-kicker){line-height:1.65;opacity:.62;margin:25px 0}.pgpq-link{color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding:0 0 8px;margin-top:auto;display:flex;gap:30px;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.pgpq-kicker{color:var(--pgpq-accent);margin-bottom:18px}
.pgpq-alternatives-title{font-family:"Playfair Display",serif;font-size:38px;font-weight:500;margin:80px 0 24px}.pgpq-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.pgpq-product-grid .pgpq-product__body h3{font-size:38px}.pgpq-restart{margin:70px auto 0;display:block;background:none;border:1px solid rgba(255,255,255,.3);color:inherit;padding:16px 24px;cursor:pointer}.pgpq-empty{text-align:center;padding:80px}.pgpq-enter{animation:pgpq-enter .55s cubic-bezier(.2,.7,.2,1) both}
@keyframes pgpq-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes pgpq-spin{to{transform:rotate(360deg)}}
@media(max-width:800px){.pgpq-header{height:78px;padding:20px 22px}.pgpq-intro{grid-template-columns:1fr}.pgpq-intro__copy{padding:58px 24px 68px}.pgpq-intro__visual{min-height:480px}.pgpq-options{grid-template-columns:1fr}.pgpq-question{padding:40px 20px 70px}.pgpq-back{margin-bottom:40px}.pgpq-product.is-featured{grid-template-columns:1fr;grid-template-rows:auto auto;min-height:0}.pgpq-product-grid{grid-template-columns:1fr}.pgpq-results{padding-left:20px;padding-right:20px}.pgpq-results h2{font-size:58px}}
@media(prefers-reduced-motion:reduce){.pgpq-root *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
