/* CCC storefront: charcoal, brass and approved product photography. */
:root{--panel:#19201b;--line:#3c453d;--muted:#c0c3b9;--brass:#d0b17b}
.opening-announcement{background:#f5c65d;color:#171b16;border-top:4px solid #fff0b5;border-bottom:4px solid #9d6c20;box-shadow:0 4px 18px #0005}
.opening-announcement>a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:20px 20px;text-align:center;color:inherit;text-decoration:none;line-height:1.25;box-sizing:border-box}
.opening-announcement strong{font-size:clamp(1.5rem,3.3vw,2.25rem);font-weight:900;letter-spacing:.12em}.opening-banner-date{font-size:clamp(1.15rem,2.4vw,1.5rem);font-weight:800}.opening-banner-detail{font-size:15px;font-weight:600}.opening-announcement a:hover{background:#ffda7d}.opening-announcement a:focus-visible{outline:3px solid #171b16;outline-offset:-7px}
.opening-invitation{border:1px solid var(--brass);background:var(--panel);padding:30px;box-sizing:border-box;margin-bottom:36px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;border-radius:5px;scroll-margin-top:20px}
.opening-invitation h2{font:normal clamp(1.8rem,4vw,2.6rem)/1.15 Georgia,serif;margin:8px 0 14px}.opening-invitation p{max-width:45rem;color:var(--muted);margin:10px 0}.opening-invitation .opening-date{color:var(--brass);font-weight:bold}.opening-invitation .button{white-space:normal;text-align:center}
@media(max-width:540px){.opening-announcement>a{gap:6px;padding:17px 16px}.opening-announcement strong{font-size:25px;letter-spacing:.09em}.opening-banner-date{font-size:20px}.opening-banner-detail{font-size:14px;max-width:28ch}.opening-invitation{padding:20px;grid-template-columns:1fr;gap:12px;margin-bottom:28px}.opening-invitation h2{font-size:1.8rem}.opening-invitation p{font-size:15px}.opening-invitation .button{display:block}}
body{font-size:16px;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-weight:400;text-wrap:balance}p,li,dd{overflow-wrap:break-word}
.top{padding:18px 0;gap:24px}.brand{gap:10px;flex-shrink:0}.brand img{width:66px;height:50px}.brand span{color:var(--cream);letter-spacing:.055em;font-size:13px}.brand strong{display:block;font-weight:700}.brand small{display:block;margin-top:4px;font-size:12px;letter-spacing:.025em;font-weight:400;color:var(--brass)}
.desktop-nav{gap:20px;font-size:14px}.desktop-nav a{padding:9px 0}.desktop-nav a[aria-current=page]{text-decoration:none;border-bottom:2px solid var(--brass)}
.button{font-size:14px;padding:13px 21px;border-radius:3px;letter-spacing:.055em;text-transform:none}.button:hover{transform:translateY(-1px)}.text-link{font-size:15px}
.storefront-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:52px;align-items:center;padding-top:48px;padding-bottom:52px}.storefront-copy h1{font:normal clamp(2.8rem,5vw,4.8rem)/1.08 Georgia,serif;letter-spacing:-.035em;margin:22px 0}.storefront-copy em{font-style:normal;color:var(--brass)}.storefront-lead{font-size:18px;color:var(--muted);max-width:30rem;margin:0 0 26px}.storefront-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.hero-signature{display:flex;align-items:center;gap:15px;margin-top:36px;color:var(--muted);font-size:14px}.hero-signature img{width:45px;height:45px;object-fit:contain}.hero-signature strong{color:var(--cream);font-weight:400}
.storefront-feature{min-width:0;margin:0;border:1px solid var(--line);background:var(--panel);border-radius:6px;overflow:hidden}.storefront-feature>a{display:block;aspect-ratio:1;overflow:hidden}.storefront-feature img{display:block;width:100%;height:100%;object-fit:contain}.storefront-feature figcaption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;border-top:1px solid var(--line)}.storefront-feature figcaption strong{display:block;font:normal 20px/1.35 Georgia,serif;margin-top:7px}.storefront-feature figcaption>div:last-child{text-align:right;flex-shrink:0}.feature-price{display:block;color:var(--brass);font-size:20px;margin-bottom:4px}.storefront-feature figcaption a{font-size:14px;text-underline-offset:4px}.storefront-feature .section-label{font-size:12px;letter-spacing:.09em}
.collection-paths{padding:44px 0 36px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}.section-heading h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:8px 0 0}.section-heading .section-label{margin:0}.collection-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.collection-path{display:block;background:var(--panel);border:1px solid var(--line);border-radius:5px;overflow:hidden;text-decoration:none;transition:border-color .2s}.collection-path:hover,.collection-path:focus-visible{border-color:var(--brass)}.collection-path img{width:100%;height:230px;display:block;object-fit:contain;background:#101511}.collection-path>div{padding:20px}.collection-path h3{font:normal 24px/1.25 Georgia,serif;margin:0 0 10px}.collection-path p{color:var(--muted);font-size:15px;margin:0;max-width:28rem}.collection-secondary{display:flex;gap:16px 30px;flex-wrap:wrap;margin-top:26px}.collection-secondary a{font-size:15px;color:var(--brass);text-underline-offset:5px}
.shopping-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:32px 0 42px;border-top:1px solid var(--line)}.shopping-notes h2{font:normal 20px/1.3 Georgia,serif;margin:0 0 10px}.shopping-notes p{margin:0;color:var(--muted);font-size:15px}.shopping-notes a{color:var(--brass);overflow-wrap:anywhere;text-underline-offset:4px}
.shop-heading{padding:36px 0 20px}.shop-heading h1{font:normal clamp(2rem,4vw,3.3rem)/1.15 Georgia,serif}.shop-heading p{font-size:16px}.shop-toolbar{padding:0 0 22px}.shop-grid{gap:22px;padding-top:28px}.shop-card{border-radius:5px}.card-copy{padding:18px}.card-copy h2{font:normal 19px/1.35 Georgia,serif}.card-copy .section-label{font-size:12px;letter-spacing:.07em}.card-price{font-size:21px;margin:10px 0 16px}.card-actions .button{font-size:14px;min-height:44px;display:flex;align-items:center;justify-content:center}.card-copy>.text-link{font-size:14px}.filter-chip{font-size:15px;padding:10px 16px;border-color:#667366}.shop-tools{max-width:none;grid-template-columns:minmax(0,1fr) 240px}.shop-tools input,.shop-tools select{font-size:16px}.shop-subcategories .filter-chip{border-radius:4px;font-size:14px}.shop-tools label{font-size:14px;color:var(--muted)}
.breadcrumb{width:min(1180px,calc(100% - 48px));margin:24px auto 0;display:flex;gap:10px 18px;font-size:14px;flex-wrap:wrap;color:var(--muted)}.breadcrumb a{text-decoration:none}.breadcrumb a+a:before,.breadcrumb span:before{content:'/';color:#808b80;margin-right:18px}.breadcrumb span{color:var(--brass)}.product-page{padding-top:16px}.product-full{border-radius:5px;padding:30px;gap:36px}.product-title{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.18;margin-top:12px}.product-price{font-size:26px;margin:18px 0}.product-details p{max-width:42rem}.product-details .note{font-size:14px}.product-specs{margin:20px 0}.product-specs div{padding:12px 0}.product-gallery{gap:12px}.condition-note{border-left:3px solid var(--brass);border-radius:3px;background:#272a20}
.premium-intro{padding-top:36px}.premium-intro h1{font-size:clamp(3rem,6vw,5rem)}.premium-showcase{gap:40px}.premium-photo img{border-radius:5px}.premium-details{gap:40px}.premium-copy .premium-price{font-size:32px!important}
.planned-products{border-top:1px solid var(--line);margin-top:36px;padding:22px 0}.planned-products summary{font:normal 23px/1.4 Georgia,serif;cursor:pointer;color:var(--brass)}.planned-products .care-product-grid{margin-bottom:0}.care-products>h2{font-size:26px;margin:24px 0 0}.care-products>.availability{font-size:15px}.request-form{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:26px}.request-form h2{margin:0}.request-form label{font-size:15px}.request-form .note{font-size:14px;margin:0}.engraving-preview{min-width:0}.engraving-preview h2{font:normal 24px/1.3 Georgia,serif}.guide-card,.policy-card,.warranty-entry{border-radius:4px}.contact{padding:54px 0 72px}.contact .page-title{max-width:40rem}.shipping-list{border-radius:5px}.section-label{font-size:13px;letter-spacing:.14em}
footer{padding-top:28px;padding-bottom:32px;align-items:flex-start}footer span{max-width:330px;font-size:13px;line-height:1.7}footer nav{max-width:600px;gap:12px 24px;flex-wrap:wrap;font-size:14px}
@media(min-width:1021px){.top{flex-wrap:nowrap}.top .desktop-nav{width:auto}}
@media(max-width:1020px){.desktop-nav{display:none}.top{flex-wrap:nowrap}.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{cursor:pointer;list-style:none;border:1px solid var(--line);padding:10px 16px;font-weight:bold}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;z-index:9;right:0;top:calc(100% + 8px);width:min(310px,calc(100vw - 32px));max-height:70vh;overflow:auto;display:flex;flex-direction:column;align-items:stretch;gap:0;background:var(--panel);border:1px solid var(--line);box-shadow:0 16px 32px #0009}.mobile-menu nav a{padding:13px 18px;border-bottom:1px solid var(--line);white-space:normal}.storefront-hero{gap:30px}.storefront-copy h1{font-size:3.2rem}.collection-path img{height:190px}}
@media(max-width:760px){.storefront-hero{grid-template-columns:1fr;padding-top:30px;gap:28px}.storefront-copy h1{font-size:clamp(2.5rem,7.5vw,3.6rem)}.storefront-lead{max-width:40rem}.hero-signature{margin-top:22px}.storefront-feature{max-width:550px}.storefront-feature>a{aspect-ratio:1.15}.collection-path-grid{grid-template-columns:1fr}.collection-path{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center}.collection-path img{height:170px}.shopping-notes{grid-template-columns:1fr;gap:24px}.section-heading{align-items:start;flex-direction:column;gap:12px}.collection-secondary{gap:14px;flex-direction:column}.shop-tools{grid-template-columns:minmax(0,1fr) 180px}.product-full{padding:22px;gap:24px}.request-form{padding:22px}footer{flex-direction:column}.breadcrumb{font-size:13px}}
@media(max-width:540px){.brand img{width:56px;height:43px}.brand span{font-size:12px;max-width:155px}.brand small{font-size:11px}.top{gap:8px;padding:14px 0}.mobile-menu summary{font-size:14px;padding:10px 13px}.storefront-feature figcaption{padding:16px;gap:12px}.storefront-feature figcaption strong{font-size:17px}.feature-price{font-size:18px}.storefront-actions{gap:18px}.storefront-actions .button{flex:1 1 100%;text-align:center}.storefront-feature .section-label{font-size:11px}.collection-path>div{padding:16px}.collection-path h3{font-size:21px}.collection-path p{font-size:14px}.collection-path-grid{gap:14px}.collection-path{grid-template-columns:110px minmax(0,1fr)}.collection-path img{height:170px}.shop-grid{gap:12px}.card-copy{padding:13px}.card-copy h2{font-size:17px}.card-copy .section-label{font-size:11px}.card-price{font-size:19px}.shop-tools{grid-template-columns:1fr}.shop-heading{padding-top:28px}.product-full{padding:18px}.product-title{font-size:2rem}.breadcrumb{width:calc(100% - 32px)}.breadcrumb a+a:before,.breadcrumb span:before{margin-right:10px}.breadcrumb{gap:8px 10px}.request-form{padding:20px}.shopping-notes{padding-bottom:32px}footer nav{gap:12px 20px}.hero-signature span{font-size:13px}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}
/* On phones, the native category picker replaces the duplicate chip list. */
@media(max-width:540px){.shop-categories{display:none}.category-picker select{width:100%;min-height:44px}.shop-toolbar{padding-bottom:12px}}

/* Keep the clearance invitation brief before the phone's category controls. */
@media(max-width:540px){
  #clearance-collection{padding-top:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}
  #clearance-collection h2{font-size:1.25rem;line-height:1.25;margin:0 0 6px}
  #clearance-collection p{font-size:.875rem;line-height:1.45;margin:0 0 10px}
  #clearance-collection .button{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;font-size:.8125rem;letter-spacing:.02em}
}

.r2-still-gallery{border-top:1px solid var(--line);padding-top:36px;padding-bottom:36px}.r2-still-gallery h2{font-size:28px}.r2-still-gallery .r2-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.r2-still-gallery figure{margin:0}.r2-still-gallery img{display:block;width:100%;height:100%;object-fit:contain}.r2-still-gallery figure>a{display:block;aspect-ratio:1;background:var(--panel);border:1px solid var(--line);border-radius:5px;overflow:hidden}.r2-still-gallery figcaption{font-size:14px;color:var(--muted);margin-top:10px}@media(max-width:600px){.r2-still-gallery .r2-gallery{grid-template-columns:1fr;gap:24px}}

.engraving-examples{padding-top:32px;padding-bottom:48px;border-top:1px solid var(--line)}.engraving-examples>p{max-width:760px}.engraving-examples figure{margin:24px 0}.engraving-examples figure img{display:block;width:100%;height:auto;border-radius:5px}.engraving-examples figcaption{font-size:14px;line-height:1.6;margin-top:12px;color:var(--muted)}.engraving-example-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:24px 0}.engraving-example-groups h3{font-size:18px;color:var(--brass)}.engraving-example-groups p{font-size:15px;line-height:1.7}@media(max-width:700px){.engraving-example-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}

.engraver-location{display:flex;align-items:center;gap:18px;margin:22px 0;color:var(--brass);font-size:20px}.engraver-location img{width:88px;height:auto;background:white;border-radius:4px;padding:6px}.engraver-location small{font-size:15px;color:var(--cream)}
