/* ===========================================================
   Custom Cone Sleeve, product page styles
   (loads after cone-styles.css; reuses its tokens)
   =========================================================== */

/* ---------- product main ---------- */
.pd-main{padding:8px 0 72px;}
.pd-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start;}

/* gallery */
.gallery{display:grid;grid-template-columns:88px 1fr;gap:16px;}
.gallery-thumbs{display:flex;flex-direction:column;gap:12px;}
.gallery-thumbs .thumb{aspect-ratio:1/1;border-radius:12px;overflow:hidden;border:2px solid var(--line);cursor:pointer;background:var(--pink-blush);transition:border-color .2s;}
.gallery-thumbs .thumb.active{border-color:var(--pink);}
.gallery-thumbs .thumb image-slot{width:100%;height:100%;pointer-events:none;}
.gallery-main{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--pink-blush);aspect-ratio:1/1;box-shadow:var(--shadow);}
.gallery-main image-slot{width:100%;height:100%;}

/* accordion */
.pd-accordion{margin-top:34px;border-top:1px solid var(--line);}
.acc-item{border-bottom:1px solid var(--line);}
.acc-q{display:flex;align-items:center;justify-content:space-between;padding:20px 4px;cursor:pointer;font-family:var(--serif);font-weight:700;font-size:21px;color:var(--ink);}
.acc-q .pm{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--pink);transition:all .22s;flex-shrink:0;}
.acc-item.open .pm{background:var(--pink);color:#fff;border-color:var(--pink);transform:rotate(135deg);}
.acc-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.acc-a-inner{padding:0 4px 22px;color:var(--muted);font-size:15px;line-height:1.65;}
.acc-a-inner ul{margin:8px 0 0;padding-left:18px;}
.acc-a-inner li{margin-bottom:6px;}

/* payment card */
.pay-card{margin-top:28px;background:var(--cool);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;}
.pay-card h4{font-family:var(--serif);font-size:18px;color:var(--ink);margin-bottom:6px;}
.pay-card .pc-icons{display:flex;gap:8px;margin:12px 0;}
.pay-card .pc-icons .pi{background:#fff;border:1px solid var(--line);border-radius:6px;padding:5px 9px;font-size:11px;font-weight:800;color:var(--ink);}
.pay-card p{font-size:13px;color:var(--muted);line-height:1.5;}

/* ---------- product info (right) ---------- */
.pd-badge{display:inline-block;background:var(--pink);color:#fff;font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;padding:7px 14px;border-radius:8px;margin-bottom:16px;}
.pd-title{font-size:42px;line-height:1.05;margin-bottom:14px;}
.pd-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:14px;color:var(--muted);padding-bottom:18px;border-bottom:1px solid var(--line);}
.pd-meta a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.pd-meta a:hover{color:var(--pink);}
.pd-price{font-family:var(--serif);font-weight:800;font-size:40px;color:var(--ink);margin:20px 0 6px;}
.pd-price small{font-size:20px;color:var(--muted);font-family:var(--sans);font-weight:500;}
.pd-pricenote{color:var(--pink-deep);font-size:14px;line-height:1.5;max-width:480px;}
.pd-ticks{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0;}
.pd-ticks span{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--ink);}
.pd-ticks i{color:var(--pink);}
.pd-desc{color:var(--text);font-size:15px;line-height:1.7;}
.pd-desc .rm{color:var(--pink);font-weight:700;cursor:pointer;}
.pd-desc .more{display:none;}
.pd-desc.open .more{display:inline;}

/* inline quote form */
.pd-form{margin-top:26px;border-top:1px solid var(--line);padding-top:26px;}
.pd-form .grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.pd-form .dim{display:grid;grid-template-columns:1fr 1fr 1fr 90px;gap:10px;}
.pd-form input,.pd-form select,.pd-form textarea{
  border:1px solid var(--line);background:#fbfcfc;border-radius:10px;padding:13px 14px;
  font-family:var(--sans);font-size:14px;color:var(--text);outline:none;width:100%;transition:border .2s,box-shadow .2s;
}
.pd-form input:focus,.pd-form select:focus,.pd-form textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px color-mix(in srgb, var(--pink) 13%, transparent);background:#fff;}
.pd-form .full{grid-column:1/-1;}
.pd-form textarea{min-height:96px;resize:vertical;}
.pd-form .submit{width:100%;justify-content:center;margin-top:14px;background:var(--ink);padding:15px;}
.pd-form .submit:hover{background:var(--pink);}

/* qty + cart */
.pd-buy{display:flex;gap:14px;align-items:center;margin-top:22px;}
.qty{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:40px;overflow:hidden;}
.qty button{width:44px;height:48px;border:none;background:#fff;font-size:18px;color:var(--ink);}
.qty button:hover{background:var(--pink);color:#fff;}
.qty input{width:46px;text-align:center;border:none;outline:none;font-family:var(--sans);font-size:16px;font-weight:600;color:var(--ink);background:transparent;}
.pd-buy .add{flex:1;justify-content:center;padding:15px 24px;}
.pd-ship{display:flex;flex-direction:column;gap:10px;margin-top:22px;}
.pd-ship div{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text);}
.pd-ship i{color:var(--pink);width:18px;}
.pd-offer{margin-top:22px;background:color-mix(in srgb, var(--pink) 12%, white);border:1px solid color-mix(in srgb, var(--pink) 30%, transparent);border-radius:14px;padding:16px 18px;display:flex;gap:12px;align-items:flex-start;}
.pd-offer i{color:var(--pink-deep);font-size:18px;margin-top:2px;}
.pd-offer b{color:var(--ink);font-family:var(--serif);font-size:16px;display:block;margin-bottom:3px;}
.pd-offer p{font-size:13px;color:var(--muted);}
.pd-offer a{color:var(--pink-deep);font-weight:700;}

/* ---------- clients band ---------- */
.clients{background:color-mix(in srgb, var(--pink) 12%, white);padding:72px 0;}
.clients h2{font-size:38px;margin-bottom:40px;}
.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.client-card{background:#fff;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;}
.client-card .cc-head{display:flex;align-items:center;gap:12px;}
.client-card .cc-av{width:46px;height:46px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;font-family:var(--serif);font-weight:800;}
.client-card .cc-head b{font-family:var(--serif);font-size:17px;color:var(--ink);display:block;}
.client-card .cc-head span{font-size:12px;color:var(--muted);}
.client-card .stars{color:var(--gold);font-size:14px;}
.client-card p{font-size:14px;color:var(--text);line-height:1.6;flex:1;}
.client-card .cc-tag{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;}
.client-card .cc-tag .ct-ic{width:30px;height:30px;border-radius:8px;background:var(--pink-blush);display:grid;place-items:center;color:var(--pink-deep);font-size:12px;}

/* ---------- tabs ---------- */
.pd-tabs{padding:76px 0;}
.tab-nav{display:flex;gap:34px;border-bottom:1px solid var(--line);margin-bottom:40px;flex-wrap:wrap;}
.tab-nav button{background:none;border:none;font-family:var(--serif);font-size:24px;font-weight:700;color:var(--muted);padding-bottom:16px;position:relative;transition:color .2s;}
.tab-nav button.active{color:var(--ink);}
.tab-nav button.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--pink);border-radius:3px;}
.tab-panel{display:none;}
.tab-panel.active{display:block;animation:fadeIn .25s ease;}
.tab-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.tab-split h3{font-size:30px;margin-bottom:14px;}
.tab-split p{color:var(--muted);line-height:1.7;margin-bottom:12px;}
.spec-table{width:100%;border-collapse:collapse;}
.spec-table td{padding:13px 4px;border-bottom:1px solid var(--line);font-size:15px;}
.spec-table td:first-child{color:var(--muted);width:42%;}
.spec-table td:last-child{color:var(--ink);font-weight:600;}
.dieline-img{border-radius:var(--radius-lg);overflow:hidden;background:var(--cool);min-height:340px;}
.dieline-img image-slot{width:100%;height:100%;min-height:340px;}
.faq-mini{display:grid;gap:14px;}

/* ---------- closer look ---------- */
.closer{padding:0 0 76px;}
.closer h2{text-align:center;font-size:38px;margin-bottom:46px;}
.closer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.closer-card .ci-img{aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;background:var(--pink-blush);margin-bottom:18px;}
.closer-card .ci-img image-slot{width:100%;height:100%;}
.closer-card .num{font-family:var(--serif);font-weight:800;color:var(--pink);font-size:16px;border-top:1px dashed var(--line);padding-top:12px;}
.closer-card h4{font-family:var(--serif);font-size:19px;color:var(--ink);margin:8px 0;}
.closer-card p{font-size:14px;color:var(--muted);line-height:1.55;}

/* ---------- standout split ---------- */
.pd-standout{padding:0 0 80px;}
.pd-standout .so-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.pd-standout .eyebrow{margin-bottom:12px;}
.pd-standout h2{font-size:36px;margin-bottom:16px;}
.pd-standout p{color:var(--muted);line-height:1.7;margin-bottom:26px;max-width:460px;}
.pd-standout .so-img{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);background:var(--pink-blush);aspect-ratio:1/1;}
.pd-standout .so-img image-slot{width:100%;height:100%;}

/* ---------- related ---------- */
.related{padding:0 0 80px;}
.related h2{font-size:36px;margin-bottom:36px;}
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}

/* ---------- marquee ---------- */
.marquee{background:var(--ink);color:#fff;overflow:hidden;padding:18px 0;}
.marquee-track{display:flex;gap:54px;white-space:nowrap;width:max-content;animation:marquee 26s linear infinite;}
.marquee-track span{display:inline-flex;align-items:center;gap:12px;font-weight:600;font-size:15px;}
.marquee-track span i{color:var(--pink);}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

@media(max-width:980px){
  .pd-grid{display:flex;flex-direction:column;gap:30px;}
  .pd-left,.pd-right,.pd-extra{display:contents;}
  .pd-header{order:1;}
  .pd-gallery{order:2;}
  .pd-buybox{order:3;}
  .pay-card{order:4;margin-top:0;}
  .pd-accordion{order:5;}
  .pd-header .pd-title{font-size:30px;}
  .tab-split,.pd-standout .so-grid{grid-template-columns:1fr;gap:36px;}
  .closer-grid,.rel-grid,.client-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:560px){
  .gallery{grid-template-columns:1fr;}
  .gallery-thumbs{flex-direction:row;}
  .gallery-thumbs .thumb{width:72px;}
  .closer-grid,.rel-grid,.client-grid{grid-template-columns:1fr;}
  .pd-form .grid,.pd-form .dim{grid-template-columns:1fr;}
  .pd-buy{flex-wrap:wrap;}
  .tab-nav{gap:18px;}
  .tab-nav button{font-size:19px;}
}
