/* Header + hero + category rail share one dynamic viewport. */
.home-page{--home-header-height:76px}
.home-page .site-header{height:var(--home-header-height);box-sizing:border-box;border-bottom:1px solid #ffffff1f;background:#242329}
.home-page .header-inner{width:calc(100% - 80px);max-width:1600px;height:100%}
.home-page .site-header .brand{font-size:40px;gap:5px;letter-spacing:-1.3px}
.home-page .brand-period{display:none}
.home-page .site-header .pecan-mark{width:39px;height:45px}
.home-page .desktop-nav{gap:44px;font-size:17px}
.home-page .desktop-nav a{font-size:17px}
.home-page .saved-label{display:none}
.home-page .header-actions{gap:24px}
.home-page .icon-button,.home-page .saved-toggle{min-width:44px;min-height:44px}
.home-page .header-actions svg{width:30px;height:30px}
.search-hero.discovery{padding:0;background:#242329;color:#fff}
.search-hero{scroll-margin-top:var(--home-header-height);height:calc(100vh - var(--home-header-height));height:calc(100dvh - var(--home-header-height));display:grid;grid-template-rows:minmax(0,1fr) auto}
.search-hero-stage{position:relative;isolation:isolate;min-height:0;display:grid;align-items:center;overflow:hidden}
.search-hero-media{position:absolute;inset:0;z-index:-2}
.search-hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.search-hero-stage::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 15%,#24232925 26%,#24232935 50%,#24232925 74%,transparent 86%)}
.search-hero-content{width:min(850px,calc(100% - 64px));margin-inline:auto;padding:clamp(16px,4vh,60px) 0;text-align:center}
.search-hero h1{margin:0 0 19px;font-size:clamp(52px,5.3vw,82px);font-weight:800;line-height:1.15;letter-spacing:-2.6px;color:#fff;text-wrap:balance}
.search-hero-intro{margin:0 auto clamp(20px,4vh,43px);color:#d4baf1;font-size:19px;font-weight:500;line-height:1.7;text-wrap:balance}
.search-hero .search-form{display:flex;gap:12px;padding:6px;background:#fff;border:2px solid #e9e3f0;border-radius:18px;box-shadow:0 10px 36px #0002;min-height:80px}
.search-hero .search-form input{width:100%;min-width:0;flex:1;font:inherit;font-size:24px;padding:14px 22px;color:#242329;border:0;background:transparent;outline:none}
.search-hero .search-form input::placeholder{color:#8c8991;opacity:1}
.search-hero .search-form:focus-within{outline:3px solid #c6a0ff;outline-offset:5px}
.search-hero .search-form .button{border:0;flex:0 0 91px;width:91px;min-width:0;min-height:64px;padding:12px 24px;border-radius:13px;background:#6c3ce9}
.search-hero .search-form .button:hover{background:#7e50f0}
.search-hero .search-form svg{width:33px;height:33px;stroke:currentColor;stroke-width:1.7}
.search-hero .quick-searches{display:flex;justify-content:center;gap:17px;margin:clamp(18px,3.5vh,35px) 0 0;flex-wrap:wrap}
.search-hero .quick-searches button{font:inherit;font-size:17px;line-height:1.4;color:#d8c2f0;border:1px solid #c4a7dc;border-radius:28px;padding:9px 27px;min-height:44px;background:#24232944;transition:background .15s,border-color .15s}
.search-hero .quick-searches button:hover{background:#6c3ce94d;border-color:#e5d3ff}
.search-hero-disclosure{font-size:14px;color:#bbb6c2;margin:47px 0 0;line-height:1.6}
.search-noscript{font-size:14px;color:#d4baf1}
.search-hero .room-categories{width:100%;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;max-width:1360px;margin:0 auto;padding:17px 32px;border-top:1px solid #ffffff35;background:#242329}
.search-hero .room-category{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:76px;color:#fff;border:0;border-inline-start:1px solid #ffffff25;background:transparent;text-decoration:none;transition:color .15s}
.search-hero .room-category:first-child{border-inline-start:0}
.search-hero .room-category svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.search-hero .room-category strong{font-size:18px;font-weight:500;margin:0}
.search-hero .room-category:hover,.search-hero .room-category[aria-current=true]{color:#c4a3ff}
.search-hero :is(a,button):focus-visible{outline:2px solid #d8c2ff;outline-offset:5px}
.home-page .catalog-section{background:#fff;padding-top:54px}
.home-page #catalog-title{font-size:40px;letter-spacing:-.8px}

@media(max-width:1100px){.home-page .desktop-nav{gap:22px}.home-page .desktop-nav a{font-size:14px}.search-hero-content{width:min(760px,calc(100% - 80px))}.search-hero-stage::after{background:linear-gradient(90deg,#24232930,#242329b0 27%,#242329b0 73%,#24232930)}.search-hero .room-category strong{font-size:15px}}
@media(max-width:700px){.home-page{--home-header-height:66px}.home-page .header-inner{height:100%;width:calc(100% - 32px)}.home-page .site-header .brand{font-size:29px;letter-spacing:-.6px}.home-page .site-header .pecan-mark{width:29px;height:35px}.home-page .header-actions{gap:10px}.home-page .header-actions svg{width:26px;height:26px}.search-hero-backdrop{object-position:center bottom;opacity:1}.search-hero-stage::after{background:linear-gradient(90deg,#24232908 0%,#24232950 35%,#24232950 65%,#24232908 100%),linear-gradient(180deg,#24232928 0%,#24232950 30%,#2423291a 70%,transparent 100%)}.search-hero-content{width:calc(100% - 32px);padding:clamp(16px,4vh,40px) 0}.search-hero h1{font-size:clamp(34px,8.8vw,54px);letter-spacing:-1.2px;margin-bottom:16px}.search-hero-intro{font-size:16px;line-height:1.8;margin-bottom:20px;max-width:390px}.search-hero .search-form{min-height:64px;border-radius:13px;gap:2px;padding:5px}.search-hero .search-form input{font-size:16px;padding:12px 10px}.search-hero .search-form .button{flex-basis:58px;width:58px;min-height:50px;padding:12px;border-radius:9px}.search-hero .search-form svg{width:27px;height:27px}.search-hero .quick-searches{gap:8px;margin-top:20px;flex-wrap:nowrap;justify-content:center;overflow-x:auto;max-width:100%;padding:3px 2px;scrollbar-width:none}.search-hero .quick-searches button{font-size:13px;padding:9px 13px;min-height:44px;white-space:nowrap;flex-shrink:0}.search-hero-disclosure{font-size:12px;margin-top:30px}.search-hero .room-categories{grid-template-columns:repeat(3,minmax(0,1fr));padding:10px 12px;row-gap:8px}.search-hero .room-category{min-height:64px;gap:6px}.search-hero .room-category:nth-child(4){border-inline-start:0}.search-hero .room-category svg{width:28px;height:28px}.search-hero .room-category strong{font-size:13px}.home-page .catalog-section{padding-top:30px}.home-page #catalog-title{font-size:27px}}
@media(prefers-reduced-motion:reduce){.search-hero *{transition:none!important}}

@media(min-width:701px) and (max-height:620px){
 .home-page{--home-header-height:60px}
 .search-hero-content{padding:12px 0}
 .search-hero h1{font-size:clamp(30px,4.5vw,52px);margin-bottom:10px;letter-spacing:-1px}
 .search-hero-intro{font-size:14px;line-height:1.6;margin-bottom:15px}
 .search-hero .search-form{min-height:54px;padding:4px;border-radius:13px}
 .search-hero .search-form input{font-size:18px;padding:8px 14px}
 .search-hero .search-form .button{min-height:44px;flex-basis:64px;width:64px;padding:8px 17px;border-radius:9px}
 .search-hero .search-form svg{width:26px;height:26px}
 .search-hero .quick-searches{margin-top:13px;gap:9px}
 .search-hero .quick-searches button{font-size:13px;min-height:44px;padding:7px 16px}
 .search-hero .room-categories{padding-block:8px;row-gap:4px}
 .search-hero .room-category{min-height:54px;gap:5px}
 .search-hero .room-category svg{width:25px;height:25px}
 .search-hero .room-category strong{font-size:12px}
}
@media(max-width:360px){.search-hero .quick-searches{justify-content:flex-start}.search-hero .search-form input{font-size:15px}}
@media(max-width:700px){.search-hero{height:calc(100svh - var(--home-header-height))}}
.home-languages{display:flex;gap:10px;align-items:center;direction:ltr;margin-inline-start:auto}.home-languages a{color:#e2d8f1;font-size:12px;text-decoration:none}.home-languages a[aria-current=page]{color:#c6a5ff;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.home-languages{gap:7px;margin-inline-start:0}.home-languages a{font-size:10px}.home-page .header-actions{gap:4px}.home-page .site-header .brand{font-size:25px}.home-page .site-header .pecan-mark{width:26px;height:31px}}

@media(max-width:700px){
 .search-hero h1{text-shadow:0 2px 18px #000b}
 .search-hero-intro{color:#eadcf8;text-shadow:0 2px 9px #000,0 0 22px #242329}
 .search-hero .quick-searches button{background:#242329b8;backdrop-filter:blur(6px);border-color:#d5bcec;color:#eee0ff}
}

.home-page .header-actions{margin-inline-start:auto}

@media(max-width:700px){.search-hero .room-categories{grid-template-columns:repeat(4,minmax(0,1fr))}.search-hero .room-category{border-inline-start:0}.search-hero .room-category strong{font-size:12px}}
