/* CrunchCone — finishing details */
:root{--page:clamp(24px,5vw,88px)}
body{overflow-wrap:break-word}
button,a,summary{touch-action:manipulation}
::selection{background:var(--lime);color:var(--forest)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(246,243,233,.97);backdrop-filter:blur(12px);border-bottom:1px solid #123c3212}
.wordmark{display:inline-flex;align-items:center}
.brand-star{width:26px;height:26px;line-height:0;margin-left:10px;color:#6b8e3d}
.spark-icon{display:block;width:100%;height:100%}
.mini-star{width:24px;height:24px;flex:0 0 24px}
.closing-star{width:48px;height:48px;margin:0 auto 28px}
.paper-bottom>span{width:27px;height:27px;display:block}
.arrow-icon{display:inline-block;vertical-align:middle;width:17px;height:17px;flex:0 0 17px;transition:transform .2s ease}
.button:hover .arrow-icon,.nav-cta:hover .arrow-icon{transform:translate(2px,-2px)}
.nav-cta{display:inline-flex;gap:20px;align-items:center}
.button{line-height:1.4;box-shadow:0 1px 0 #ffffff15 inset}
.button:focus-visible,.nav-cta:focus-visible{outline:3px solid #69913a;outline-offset:5px}
.hero .button:focus-visible{outline-color:var(--cream)}
.hero-image{filter:none}
.hero-caption{font-size:10px}
.concept-bar{font-size:12px;padding-top:19px;padding-bottom:19px}
.concept-bar>a{display:inline-flex;align-items:center;gap:10px;padding-bottom:3px}
.concept-bar .arrow-icon{width:14px;height:14px;flex-basis:14px}
.text-tags span{background:#ffffff28;color:var(--forest)}
.steps li{gap:25px}
.step-number{min-width:26px}
.note-scribble{color:#446347}
.note-scribble:after{content:"";position:absolute;right:7px;top:24px;width:31px;height:20px;border-right:1.5px solid;border-bottom:1.5px solid;border-radius:0 0 18px 0;transform:rotate(22deg)}
.paper-note{border:1px solid #e2dfd1;border-bottom:4px solid #e2dfd1}
.paper-note p{padding:25px 0}
.paper-brand,.paper-bottom{font-size:9px}
.paper-brand{color:#596f60}
.product-image img{transition:transform .55s ease}
.product:hover .product-image img{transform:scale(1.025)}
.product-image{border:1px solid #123c3210}
.product-title{align-items:baseline}
.product-title h3{line-height:1.1}
.product-status{font-size:11px}
.price span{font-size:10px}
.care h2{max-width:420px}
.care details{padding:0}
.care summary{list-style:none;position:relative;padding:23px 32px 23px 0;min-height:58px}
.care summary::-webkit-details-marker{display:none}
.care summary:after{content:"+";position:absolute;right:3px;top:20px;font-size:23px;line-height:1;font-weight:400;color:var(--forest)}
.care details[open] summary:after{content:"−"}
.care details p{margin:0 0 24px;padding-right:24px}
footer>a:not(.wordmark){display:inline-flex;align-items:center;gap:12px}
.footer-fine{font-size:10px}
@media(min-width:1600px){.section,.note-section,.audience{padding-left:max(var(--page),calc((100vw - 1500px)/2));padding-right:max(var(--page),calc((100vw - 1500px)/2))}}
@media(max-width:720px){
  .site-header{height:70px;gap:12px;padding:0 20px}
  .wordmark{font-size:23px;letter-spacing:-1.3px}
  .brand-star{width:20px;height:20px;margin-left:7px}
  nav{gap:18px}
  nav .collection-link{display:inline-block!important;font-size:11px}
  .nav-cta{font-size:11px;gap:8px;border:0;min-height:44px}
  .nav-cta .arrow-icon{width:13px;height:13px;flex-basis:13px}
  html{scroll-padding-top:86px}
  .hero{padding-bottom:370px}
  .hero-content{padding-top:38px}
  .hero h1{font-size:clamp(68px,18vw,98px)}
  .hero-image{height:400px}
  .hero-shade{background:linear-gradient(180deg,#09291e 0%,#09291e 42%,#09291e00 68%)}
  .hero-description{font-size:19px}
  .hero-caption{font-size:8px;bottom:17px}
  .concept-bar{gap:13px;padding:18px 24px}
  .concept-bar p{font-size:11px;line-height:1.6}
  .concept-bar>a{display:none}
  .intro-copy .large-copy{font-size:23px;line-height:1.35}
  .image-label{font-size:9px;padding:9px 12px}
  .note-section{gap:42px;padding-top:60px;padding-bottom:62px}
  .note-stage{padding:36px 8px;min-height:332px}
  .paper-note{padding:23px;transform:rotate(-4deg)}
  .paper-note.revealed{transform:rotate(2deg)}
  .paper-brand,.paper-bottom{font-size:8px}
  .note-caption{font-size:8px;letter-spacing:.08em}
  .product-title h3{font-size:25px}
  .product-status{font-size:10px}
  .product-badge{font-size:10px}
  .care summary{font-size:14px;padding-top:22px;padding-bottom:22px}
  .care details p{padding-right:10px}
  .closing-star{width:42px;height:42px}
  .closing h2{font-size:clamp(42px,11vw,59px)}
  footer p{font-size:11px}
  footer>a:not(.wordmark){min-height:40px;font-size:12px}
  .footer-fine{font-size:10px;line-height:1.7}
}
@media(max-width:380px){
  .site-header{padding:0 16px}
  .wordmark{font-size:21px}
  .brand-star{display:none}
  nav{gap:13px}
  .nav-cta{gap:5px}
  .hero{padding-bottom:335px}
  .hero-image{height:365px}
  .paper-note{padding:20px;min-height:260px}
  .paper-note p{font-size:29px}
  .product-title{gap:12px}
  .product-title h3{font-size:23px}
  .price{font-size:26px}
}
@media(prefers-reduced-motion:reduce){.arrow-icon,.product-image img{transition:none}.product:hover .product-image img,.button:hover .arrow-icon,.nav-cta:hover .arrow-icon{transform:none}}

nav>a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:720px){nav .collection-link{display:inline-flex!important}}

/* Actual owner-supplied prototype photography */
.hero-image{width:52%;right:0;top:0;height:100%;object-fit:cover;object-position:50% 20%}
.hero-shade{display:none}
.hero-content{max-width:42%}
.hero-caption>span:last-child{background:var(--cream);color:var(--forest);padding:8px 11px;font-weight:700}
.ritual-photo img{object-position:50% 50%}
.single .product-image{height:520px;background:#e3d9cf}
.single .product-image img{object-fit:cover;object-position:50% 38%}
.bundle-panel{height:520px;background:var(--forest);color:var(--cream);display:flex;flex-direction:column;justify-content:center;padding:50px;isolation:isolate}
.bundle-panel .product-badge{z-index:2}
.bundle-count{position:absolute;right:16px;bottom:0;font-size:270px;font-weight:700;line-height:.85;color:#ffffff0c;letter-spacing:-.08em;z-index:-1}
.bundle-panel>p{font-size:clamp(40px,4.5vw,67px);font-weight:600;line-height:1.02;letter-spacing:-.05em}
.bundle-panel em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}
.bundle-caption{position:absolute;bottom:26px;left:26px;right:26px;font-size:9px;letter-spacing:.12em;line-height:1.6}
@media(max-width:1050px) and (min-width:721px){.hero-content{max-width:42%}.hero h1{font-size:76px}.bundle-panel{padding:34px}.single .product-image,.bundle-panel{height:440px}}
@media(max-width:720px){
 .hero{display:flex;flex-direction:column;padding-bottom:0;height:auto;min-height:0}
 .hero-content{order:0;max-width:100%;padding-top:38px;padding-bottom:32px;margin:0 24px}
 .hero-image{position:relative;order:1;width:calc(100% - 48px);height:auto;aspect-ratio:3/4;right:auto;top:auto;bottom:auto;margin:0 24px;object-fit:cover;object-position:center}
 .hero-caption{position:relative;order:2;left:auto;right:auto;bottom:auto;padding:17px 24px 22px;align-items:center;font-size:8px}
 .hero-caption>span:last-child{padding:7px 8px;font-size:7px}
 .single .product-image{height:auto;aspect-ratio:3/4}
 .single .product-image img{object-fit:cover;object-position:center}
 .pack .bundle-panel{height:330px;padding:32px}
 .bundle-panel>p{font-size:48px}
 .bundle-count{font-size:220px}
 .bundle-caption{left:24px;right:24px;bottom:20px;font-size:8px}
}

.single .product-badge{top:auto;bottom:18px}

/* Preserve the complete approved studio composition at every screen size. */
.hero-image,.ritual-photo img,.single .product-image img{object-fit:contain;background:#ede9e2}

/* Approved five-box bundle concept, shown without cropping. */
.pack .bundle-photo{height:520px;background:#ede7df;display:flex;align-items:center;justify-content:center;padding-bottom:35px}
.pack .bundle-photo img{object-fit:contain;object-position:center;height:100%;width:100%}
.bundle-photo-label{position:absolute;bottom:12px;left:16px;right:16px;text-align:center;font-size:9px;letter-spacing:.1em;color:var(--forest)}
@media(max-width:1050px) and (min-width:721px){.pack .bundle-photo{height:440px}}
@media(max-width:720px){.pack .bundle-photo{height:auto;aspect-ratio:1.55;padding-bottom:29px}.bundle-photo-label{font-size:8px;bottom:10px}}
