:root { --gyc-pe-forest:#163d2f; --gyc-pe-forest-2:#235944; --gyc-pe-cream:#fbf5ea; --gyc-pe-gold:#b77a3e; --gyc-pe-ink:#2a201b; --gyc-pe-muted:#6f625b; --gyc-pe-line:rgba(91,65,49,.17); }
.gyc-pe-page { background:linear-gradient(180deg,#fffdf8,#f8efe2); color:var(--gyc-pe-ink); padding:112px 0 96px; }
.gyc-pe-shell { width:min(1480px,calc(100% - 40px)); margin:0 auto; }
.gyc-pe-breadcrumbs { display:flex; flex-wrap:wrap; gap:9px; align-items:center; margin:0 0 24px; color:var(--gyc-pe-muted); font-size:13px; }
.gyc-pe-breadcrumbs a { color:var(--gyc-pe-forest); font-weight:750; }
.gyc-pe-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(390px,.85fr); gap:54px; align-items:start; }
.gyc-pe-gallery { position:sticky; top:100px; }
.gyc-pe-main-image { position:relative; width:100%; height:min(72vh,780px); padding:0; overflow:hidden; border:1px solid var(--gyc-pe-line); border-radius:26px; background:#ead9c3; box-shadow:0 24px 70px rgba(87,53,32,.14); cursor:zoom-in; }
.gyc-pe-main-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.gyc-pe-main-image:hover img { transform:scale(1.025); }
.gyc-pe-main-image > span { position:absolute; right:18px; bottom:18px; padding:9px 14px; border-radius:999px; background:rgba(33,28,23,.78); color:#fff; font-size:12px; font-weight:750; }
.gyc-pe-thumbs { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:14px; }
.gyc-pe-thumb { display:grid; grid-template-columns:72px 1fr; align-items:center; gap:12px; min-height:80px; padding:7px; border:1px solid var(--gyc-pe-line); border-radius:14px; background:#fffdf9; color:var(--gyc-pe-muted); text-align:left; cursor:pointer; }
.gyc-pe-thumb img { width:72px; height:66px; border-radius:9px; object-fit:cover; }
.gyc-pe-thumb span { padding-right:8px; font-size:11px; line-height:1.25; }
.gyc-pe-thumb.is-active { border-color:var(--gyc-pe-forest); box-shadow:0 0 0 2px rgba(22,61,47,.1); color:var(--gyc-pe-forest); }
.gyc-pe-configurator { min-width:0; }
.gyc-pe-eyebrow { margin:0 0 9px; color:var(--gyc-pe-gold); font-size:11px; font-weight:850; letter-spacing:.18em; text-transform:uppercase; }
.gyc-pe-configurator h1 { margin:0; color:var(--gyc-pe-forest); font-size:clamp(34px,4vw,56px); }
.gyc-pe-model-row { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; margin:17px 0 22px; }
.gyc-pe-model-row strong { font-size:17px; letter-spacing:.08em; }
.gyc-pe-model-row span { padding:7px 10px; border-radius:999px; background:#efe4d6; color:var(--gyc-pe-muted); font-size:11px; }
.gyc-pe-price-card { padding:23px; border:1px solid rgba(183,122,62,.24); border-radius:18px; background:linear-gradient(135deg,#fff9ee,#f4e4cf); box-shadow:0 12px 34px rgba(90,56,31,.08); }
.gyc-pe-price-card small { color:var(--gyc-pe-muted); font-weight:750; }
.gyc-pe-price-card > div { margin:6px 0; }
.gyc-pe-price-card strong { color:var(--gyc-pe-forest); font-family:var(--serif,Georgia,serif); font-size:36px; }
.gyc-pe-price-card p { margin:7px 0 0; color:var(--gyc-pe-muted); font-size:11px; line-height:1.55; }
.gyc-pe-option-group { padding:24px 0; border-bottom:1px solid var(--gyc-pe-line); }
.gyc-pe-option-heading { display:flex; justify-content:space-between; gap:20px; align-items:baseline; margin-bottom:13px; }
.gyc-pe-option-heading h2,.gyc-pe-quantity-row h2 { margin:0; font-family:var(--sans,Arial,sans-serif); font-size:15px; letter-spacing:.02em; }
.gyc-pe-option-heading span { color:var(--gyc-pe-forest); font-size:12px; font-weight:800; text-align:right; }
.gyc-pe-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; }
.gyc-pe-options-wide { grid-template-columns:repeat(2,minmax(0,1fr)); }
.gyc-pe-option { min-height:48px; padding:10px 12px; border:1px solid var(--gyc-pe-line); border-radius:12px; background:#fff; color:var(--gyc-pe-ink); font-size:12px; font-weight:700; cursor:pointer; transition:.18s ease; }
.gyc-pe-option:hover { border-color:var(--gyc-pe-gold); transform:translateY(-1px); }
.gyc-pe-option.is-selected { border-color:var(--gyc-pe-forest); background:var(--gyc-pe-forest); color:#fff; box-shadow:0 8px 20px rgba(22,61,47,.18); }
.gyc-pe-quantity-row { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:24px 0; }
.gyc-pe-quantity-row small { display:block; margin-top:5px; color:var(--gyc-pe-muted); }
.gyc-pe-stepper { display:grid; grid-template-columns:42px 76px 42px; overflow:hidden; border:1px solid var(--gyc-pe-line); border-radius:13px; background:#fff; }
.gyc-pe-stepper button { border:0; background:#f4eadc; color:var(--gyc-pe-forest); font-size:22px; cursor:pointer; }
.gyc-pe-stepper input { width:100%; min-width:0; border:0; border-inline:1px solid var(--gyc-pe-line); text-align:center; font-weight:800; -moz-appearance:textfield; }
.gyc-pe-stepper input::-webkit-inner-spin-button { -webkit-appearance:none; }
.gyc-pe-summary { position:sticky; bottom:18px; display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; padding:17px; border:1px solid rgba(255,255,255,.18); border-radius:18px; background:rgba(22,61,47,.96); color:#fff; box-shadow:0 18px 44px rgba(22,61,47,.25); backdrop-filter:blur(12px); }
.gyc-pe-summary span,.gyc-pe-summary strong { display:block; }
.gyc-pe-summary span { color:#d8c5a8; font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.gyc-pe-summary strong { margin-top:4px; max-width:350px; font-size:11px; line-height:1.35; }
.gyc-pe-quote { white-space:nowrap; }
.gyc-pe-tabs { margin-top:72px; border:1px solid var(--gyc-pe-line); border-radius:24px; background:rgba(255,255,255,.75); overflow:hidden; box-shadow:0 18px 50px rgba(87,53,32,.08); }
.gyc-pe-tab-list { display:grid; grid-template-columns:repeat(3,1fr); border-bottom:1px solid var(--gyc-pe-line); background:#f2e8da; }
.gyc-pe-tab-list button { min-height:62px; border:0; border-right:1px solid var(--gyc-pe-line); background:transparent; color:var(--gyc-pe-muted); font-weight:800; cursor:pointer; }
.gyc-pe-tab-list button:last-child { border-right:0; }
.gyc-pe-tab-list button[aria-selected="true"] { background:#fff; color:var(--gyc-pe-forest); box-shadow:inset 0 -3px var(--gyc-pe-gold); }
.gyc-pe-tab-panel { padding:34px; }
.gyc-pe-tab-panel[hidden] { display:none; }
.gyc-pe-tab-panel dl { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:0; }
.gyc-pe-tab-panel dl > div,.gyc-pe-info-grid article { padding:20px; border:1px solid var(--gyc-pe-line); border-radius:14px; background:#fffdf9; }
.gyc-pe-tab-panel dt { color:var(--gyc-pe-gold); font-size:10px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.gyc-pe-tab-panel dd { margin:8px 0 0; color:var(--gyc-pe-forest); font-weight:750; }
.gyc-pe-info-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.gyc-pe-info-grid h3 { font-size:20px; }
.gyc-pe-info-grid p { color:var(--gyc-pe-muted); font-size:13px; line-height:1.6; }
.gyc-pe-back { display:inline-flex; margin-top:24px; color:var(--gyc-pe-forest); font-weight:800; }
.gyc-pe-lightbox[hidden] { display:none; }
.gyc-pe-lightbox { position:fixed; inset:0; z-index:99999; display:grid; place-items:center; padding:30px 86px; background:rgba(20,15,12,.92); }
.gyc-pe-lightbox img { max-width:min(1100px,90vw); max-height:90vh; object-fit:contain; border-radius:16px; }
.gyc-pe-lightbox-close,.gyc-pe-lightbox-nav { position:fixed; z-index:2; display:grid; place-items:center; border:1px solid rgba(255,255,255,.25); border-radius:999px; background:rgba(255,255,255,.12); color:#fff; cursor:pointer; }
.gyc-pe-lightbox-close { top:22px; right:22px; width:48px; height:48px; font-size:29px; }
.gyc-pe-lightbox-nav { top:50%; width:52px; height:52px; font-size:38px; transform:translateY(-50%); }
.gyc-pe-lightbox-nav.is-prev { left:20px; }.gyc-pe-lightbox-nav.is-next { right:20px; }
.gyc-pe-lightbox-open { overflow:hidden; }
.gyc-pe-mobile-bar { display:none; }
.product-model-card.has-product-detail .product-model-image span { opacity:1; transform:none; }

@media (max-width:1050px) {
  .gyc-pe-layout { grid-template-columns:1fr; }
  .gyc-pe-gallery { position:static; }
  .gyc-pe-main-image { height:min(70vh,680px); }
  .gyc-pe-summary { position:static; }
  .gyc-pe-tab-panel dl { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:700px) {
  .gyc-pe-page { padding:92px 0 108px; }
  .gyc-pe-shell { width:min(100% - 24px,1480px); }
  .gyc-pe-layout { gap:30px; }
  .gyc-pe-main-image { height:62vh; min-height:430px; border-radius:18px; }
  .gyc-pe-thumbs { gap:7px; }
  .gyc-pe-thumb { display:block; min-height:0; padding:4px; }
  .gyc-pe-thumb img { width:100%; height:76px; }
  .gyc-pe-thumb span { display:none; }
  .gyc-pe-configurator h1 { font-size:36px; }
  .gyc-pe-options,.gyc-pe-options-wide { grid-template-columns:repeat(2,1fr); }
  .gyc-pe-summary { display:block; }
  .gyc-pe-summary .gyc-pe-quote { display:none; }
  .gyc-pe-tab-list { overflow-x:auto; grid-template-columns:repeat(3,minmax(170px,1fr)); }
  .gyc-pe-tab-panel { padding:18px; }
  .gyc-pe-tab-panel dl,.gyc-pe-info-grid { grid-template-columns:1fr; }
  .gyc-pe-mobile-bar { position:fixed; left:0; right:0; bottom:0; z-index:9998; display:flex; justify-content:space-between; gap:15px; align-items:center; padding:11px 14px calc(11px + env(safe-area-inset-bottom)); border-top:1px solid rgba(255,255,255,.18); background:rgba(22,61,47,.97); color:#fff; box-shadow:0 -12px 34px rgba(22,61,47,.25); }
  .gyc-pe-mobile-bar small,.gyc-pe-mobile-bar strong { display:block; }
  .gyc-pe-mobile-bar small { color:#d9c5a6; font-size:9px; text-transform:uppercase; }
  .gyc-pe-mobile-bar strong { margin-top:2px; font-size:19px; }
  .gyc-pe-mobile-bar .button { min-height:44px; padding:10px 15px; white-space:nowrap; }
  .gyc-pe-lightbox { padding:66px 18px; }
  .gyc-pe-lightbox-nav { top:auto; bottom:18px; transform:none; }
}
@media (prefers-reduced-motion:reduce) { .gyc-pe-page * { scroll-behavior:auto!important; transition:none!important; } }

