/* home.css — landing-page-specific styles (loaded only on the homepage). */

/* shared bits */
.dpd-ticks { list-style:none; padding:0; margin:0; }
.dpd-ticks li { display:flex; align-items:flex-start; gap:.55rem; margin-bottom:.6rem; font-size:.92rem; color:var(--dpd-navy); }
.dpd-ticks li .dpd-i { color:var(--dpd-cyan); margin-top:.15em; }
.dpd-feature { display:flex; gap:.85rem; }
.dpd-feature__ico { flex:none; width:40px; height:40px; border-radius:10px; background:rgba(233,30,140,.10); color:var(--dpd-magenta); display:flex; align-items:center; justify-content:center; }
.dpd-feature__ico--cyan { background:rgba(0,174,239,.12); color:var(--dpd-cyan); }
.dpd-feature__title { font-size:1rem; margin:0 0 .2rem; }
.dpd-feature__desc { font-size:.88rem; color:var(--dpd-muted); margin:0; line-height:1.55; }

/* 1 ─ hero */
.dpd-hero { position:relative; color:#fff; overflow:hidden; }
.dpd-hero__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dpd-hero__scrim { position:absolute; inset:0; background:linear-gradient(90deg, rgba(10,18,35,.92) 0%, rgba(10,18,35,.72) 42%, rgba(10,18,35,.25) 100%); }
.dpd-hero__inner { position:relative; padding-block:clamp(56px,9vw,120px); }
.dpd-hero__panel { max-width:600px; }
.dpd-hero__rating { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; font-size:.85rem; font-weight:600; margin-bottom:1rem; }
.dpd-hero__rating .dpd-stars { color:var(--dpd-yellow); }
.dpd-dot { opacity:.5; }
.dpd-hero__title { font-size:clamp(2.1rem,5.4vw,3.9rem); color:#fff; margin:0 0 1rem; }
.dpd-hero__sub { font-size:clamp(1rem,1.6vw,1.18rem); color:#dbe2ee; max-width:34rem; margin-bottom:1.6rem; }
.dpd-hero__paths { display:flex; flex-wrap:wrap; gap:.9rem; margin-bottom:1.6rem; }
.dpd-pathbtn { display:flex; flex-direction:column; align-items:center; text-align:center; gap:.35rem; min-width:140px; flex:1 1 140px; padding:1.05rem .8rem; background:rgba(255,255,255,.08); border:1.5px solid rgba(255,255,255,.16); border-radius:.75rem; color:#fff; backdrop-filter:blur(4px); transition:.18s; }
.dpd-pathbtn:hover { background:var(--dpd-magenta); border-color:var(--dpd-magenta); color:#fff; transform:translateY(-2px); }
.dpd-pathbtn .dpd-i { color:var(--dpd-cyan); }
.dpd-pathbtn:hover .dpd-i { color:#fff; }
.dpd-pathbtn__label { font-weight:800; font-size:.98rem; }
.dpd-pathbtn__sub { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--dpd-yellow); }
.dpd-pathbtn:hover .dpd-pathbtn__sub { color:#fff; }
.dpd-hero__chips { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:.5rem 1.2rem; }
.dpd-hero__chips li { display:flex; align-items:center; gap:.4rem; font-size:.85rem; font-weight:600; }
.dpd-hero__chips .dpd-i { color:var(--dpd-cyan); }

/* 2 ─ marquee */
.dpd-marquee { background:var(--dpd-navy); border-top:3px solid var(--dpd-cyan); overflow:hidden; }
.dpd-marquee__track { display:flex; gap:0; white-space:nowrap; width:max-content; animation:dpd-scroll 26s linear infinite; }
.dpd-marquee__item { display:inline-flex; align-items:center; gap:.55rem; color:#fff; font-size:.85rem; font-weight:600; padding:16px 34px; border-right:1px solid rgba(255,255,255,.10); }
.dpd-marquee__item .dpd-i { color:var(--dpd-cyan); }
@keyframes dpd-scroll { to { transform:translateX(-50%); } }

/* 3 ─ why choose */
.dpd-whyshot { border-radius:1rem; box-shadow:var(--dpd-shadow-lg); aspect-ratio:4/3; }
.dpd-statbar { display:flex; margin-top:-1px; background:var(--dpd-navy); border-radius:0 0 1rem 1rem; overflow:hidden; }
.dpd-statbar > div { flex:1; text-align:center; color:#fff; padding:1.1rem .5rem; border-right:1px solid rgba(255,255,255,.12); }
.dpd-statbar > div:last-child { border-right:0; }
.dpd-statbar strong { display:block; font-size:1.6rem; color:var(--dpd-yellow); line-height:1; }
.dpd-statbar span { font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; color:#c7d0e0; }

/* 4 ─ gallery */
.dpd-gallery { columns:4; column-gap:1rem; }
.dpd-gallery > * { break-inside:avoid; margin-bottom:1rem; }
.dpd-gal .dpd-media { border-radius:.75rem; }
.dpd-gal__badge { position:absolute; top:.6rem; left:.6rem; background:var(--dpd-magenta); color:#fff; font-size:.6rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; padding:.25rem .5rem; border-radius:4px; }
.dpd-gal__cap { position:absolute; left:.7rem; right:.7rem; bottom:.6rem; display:flex; justify-content:space-between; align-items:flex-end; color:#fff; font-size:.78rem; font-weight:600; margin:0; }
.dpd-gal__likes { display:inline-flex; align-items:center; gap:.25rem; }
.dpd-gal__likes .dpd-i { color:var(--dpd-magenta); }
.dpd-gal--promo { padding:1.5rem; border-radius:.75rem; color:#fff; display:flex; flex-direction:column; justify-content:center; }
.dpd-gal--promo p { color:#c7d0e0; }
@media (max-width:1100px){ .dpd-gallery{columns:3;} }
@media (max-width:767px){ .dpd-gallery{columns:2;} }

/* 5 ─ process */
.dpd-proc { position:relative; height:100%; min-height:230px; background:#fff; border:1px solid var(--dpd-border); border-radius:.875rem; box-shadow:var(--dpd-shadow-sm); overflow:hidden; }
.dpd-proc__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dpd-proc__scrim { position:absolute; inset:0; background:linear-gradient(0deg, rgba(15,22,40,.86), rgba(15,22,40,.35)); }
.dpd-proc__body { position:relative; padding:1.5rem; height:100%; display:flex; flex-direction:column; }
.dpd-proc--img .dpd-proc__body { color:#fff; justify-content:flex-end; }
.dpd-proc--img .dpd-proc__title { color:#fff; } .dpd-proc--img .dpd-proc__desc { color:#dbe2ee; }
.dpd-proc__num { display:inline-flex; width:34px; height:34px; align-items:center; justify-content:center; border-radius:999px; background:var(--dpd-magenta); color:#fff; font-weight:800; margin-bottom:1rem; }
.dpd-proc--img .dpd-proc__num { position:absolute; top:1.25rem; left:1.5rem; margin:0; }
.dpd-proc__drop { display:flex; align-items:center; justify-content:center; height:70px; margin-bottom:.6rem; color:var(--dpd-cyan); border:2px dashed var(--dpd-border); border-radius:.6rem; }
.dpd-proc__title { font-size:1.05rem; margin:0 0 .4rem; }
.dpd-proc__desc { font-size:.86rem; color:var(--dpd-muted); margin:0; line-height:1.55; }

/* 6 ─ path cards */
.dpd-path { height:100%; background:#fff; border:2px solid var(--dpd-border); border-radius:1rem; overflow:hidden; box-shadow:var(--dpd-shadow-sm); transition:.18s; }
.dpd-path:hover { transform:translateY(-3px); box-shadow:var(--dpd-shadow-md); border-color:var(--dpd-cyan); }
.dpd-path--hot { border-color:var(--dpd-magenta); box-shadow:0 12px 40px rgba(233,30,140,.16); }
.dpd-path__media { aspect-ratio:16/10; background:var(--dpd-navy-900); }
.dpd-path__price { position:absolute; top:.75rem; right:.75rem; }
.dpd-path__drop { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.35rem; color:#fff; text-align:center; padding:1rem; }
.dpd-path__drop .dpd-i { color:var(--dpd-cyan); }
.dpd-path__drop span { font-weight:700; } .dpd-path__drop small { color:#9fb0cc; font-size:.72rem; }
.dpd-path__body { padding:1.4rem; }
.dpd-path__body h3 { margin-bottom:.5rem; }

/* 7 ─ pressing */
.dpd-press { border-radius:1rem; box-shadow:var(--dpd-shadow-lg); aspect-ratio:4/3.2; }
.dpd-press__steps { position:absolute; left:1rem; right:1rem; bottom:1rem; display:flex; flex-direction:column; gap:.4rem; }
.dpd-press__steps span { background:rgba(15,22,40,.82); color:#fff; font-size:.8rem; font-weight:600; padding:.5rem .8rem; border-radius:.5rem; backdrop-filter:blur(3px); }
.dpd-press__steps strong { color:var(--dpd-cyan); margin-right:.35rem; }
.dpd-ministat { background:var(--dpd-offwhite); border:1px solid var(--dpd-border); border-radius:.75rem; padding:1rem; }
.dpd-ministat strong { display:block; font-size:1.5rem; color:var(--dpd-magenta); line-height:1; }
.dpd-ministat span { font-size:.82rem; color:var(--dpd-muted); }

/* 8 ─ category */
.dpd-cat { display:block; height:100%; background:#fff; border:1px solid var(--dpd-border); border-radius:.875rem; overflow:hidden; box-shadow:var(--dpd-shadow-sm); color:var(--dpd-navy); transition:.18s; }
.dpd-cat:hover { transform:translateY(-3px); box-shadow:var(--dpd-shadow-md); color:var(--dpd-navy); }
.dpd-cat__media { aspect-ratio:4/3; }
.dpd-cat--sm .dpd-cat__media { aspect-ratio:16/9; }
.dpd-cat__badge { position:absolute; top:.6rem; left:.6rem; }
.dpd-cat__body { padding:1.1rem; }
.dpd-cat__title { font-size:1.02rem; margin:0 0 .3rem; }
.dpd-cat__desc { font-size:.83rem; color:var(--dpd-muted); margin:0 0 .5rem; }
.dpd-cat__foot { font-size:.8rem; color:var(--dpd-muted); display:block; }

/* 9 ─ builder mock */
.dpd-builder { background:#fff; border:1px solid var(--dpd-border); border-radius:1rem; overflow:hidden; box-shadow:var(--dpd-shadow-lg); }
.dpd-builder__bar { display:flex; align-items:center; gap:.4rem; padding:.7rem 1rem; background:var(--dpd-offwhite); border-bottom:1px solid var(--dpd-border); }
.dpd-builder__dot { width:11px; height:11px; border-radius:999px; background:#cfd6e2; }
.dpd-builder__dot:nth-child(1){background:#ff5f57;} .dpd-builder__dot:nth-child(2){background:#febc2e;} .dpd-builder__dot:nth-child(3){background:#28c840;}
.dpd-builder__ttl { font-size:.78rem; color:var(--dpd-muted); margin-left:.5rem; font-weight:600; }
.dpd-builder__body { display:grid; grid-template-columns:1fr 220px; gap:1rem; padding:1rem; }
.dpd-builder__canvas { position:relative; min-height:230px; background:repeating-linear-gradient(45deg,#f6f8fb,#f6f8fb 12px,#eef2f7 12px,#eef2f7 24px); border:2px dashed var(--dpd-border); border-radius:.6rem; padding:1rem; display:flex; flex-wrap:wrap; gap:.6rem; align-content:flex-start; }
.dpd-builder__chip { background:#fff; border:1.5px solid var(--dpd-cyan); border-radius:.4rem; padding:.4rem .6rem; font-size:.72rem; font-weight:800; color:var(--dpd-navy); box-shadow:var(--dpd-shadow-sm); }
.dpd-builder__side { display:flex; flex-direction:column; gap:.5rem; }
.dpd-builder__row { display:flex; justify-content:space-between; font-size:.85rem; padding:.45rem .6rem; background:var(--dpd-offwhite); border-radius:.4rem; }
.dpd-builder__foot { border-top:1px solid var(--dpd-border); padding:.7rem 1rem; font-size:.76rem; color:var(--dpd-muted); }
@media (max-width:575px){ .dpd-builder__body{grid-template-columns:1fr;} }

/* 10 ─ local pickup */
.dpd-pickup { text-align:center; background:#fff; border:1px solid var(--dpd-border); border-radius:.75rem; padding:1.1rem .8rem; height:100%; }
.dpd-pickup__ico { display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center; border-radius:999px; background:rgba(0,174,239,.12); color:var(--dpd-cyan); margin-bottom:.6rem; }
.dpd-map { position:relative; border-radius:1rem; overflow:hidden; box-shadow:var(--dpd-shadow-lg); }
.dpd-map__img { width:100%; display:block; }
.dpd-map__photo { position:absolute; right:1rem; bottom:4.5rem; width:38%; border:3px solid #fff; border-radius:.6rem; box-shadow:var(--dpd-shadow-md); }
.dpd-map__info { position:absolute; left:0; right:0; bottom:0; display:flex; background:var(--dpd-navy); color:#fff; }
.dpd-map__info > div { flex:1; padding:.85rem 1rem; border-right:1px solid rgba(255,255,255,.12); }
.dpd-map__info strong { display:block; font-size:.9rem; } .dpd-map__info span { font-size:.78rem; color:#c7d0e0; }

/* 11 ─ reviews */
.dpd-ratepill { display:inline-flex; align-items:center; gap:.5rem; background:var(--dpd-offwhite); border:1px solid var(--dpd-border); border-radius:999px; padding:.4rem .9rem; font-size:.85rem; font-weight:600; }
.dpd-ratepill .dpd-stars { color:var(--dpd-yellow); }
.dpd-scroller { display:flex; gap:1.25rem; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:1rem; }
.dpd-scroller > * { scroll-snap-align:start; }
/* Auto-sliding scroller (reviews): no visible scrollbar — still swipeable on touch. */
.dpd-scroller--auto { scrollbar-width:none; }
.dpd-scroller--auto::-webkit-scrollbar { display:none; }
.dpd-review { flex:0 0 340px; max-width:340px; background:#fff; border:1px solid var(--dpd-border); border-top:3px solid var(--dpd-cyan); border-radius:.875rem; padding:1.5rem; box-shadow:var(--dpd-shadow-sm); margin:0; }
.dpd-review--magenta { border-top-color:var(--dpd-magenta); } .dpd-review--yellow { border-top-color:var(--dpd-yellow); }
.dpd-review .dpd-stars { color:var(--dpd-yellow); display:block; }
.dpd-review__text { font-style:italic; font-size:.92rem; color:var(--dpd-navy); line-height:1.6; margin:0 0 1.1rem; }
.dpd-review__by { display:flex; align-items:center; gap:.65rem; }
.dpd-review__by small { display:block; color:var(--dpd-muted); font-size:.76rem; }
.dpd-avatar { width:40px; height:40px; border-radius:999px; display:flex; align-items:center; justify-content:center; font-weight:800; color:#fff; background:var(--dpd-cyan); }
.dpd-avatar--magenta { background:var(--dpd-magenta); } .dpd-avatar--yellow { background:var(--dpd-yellow); color:var(--dpd-navy); }

/* 12 ─ reels */
.dpd-reel { flex:0 0 260px; max-width:260px; margin:0; }
.dpd-reel__media { aspect-ratio:9/16; border-radius:.875rem; }
.dpd-reel__play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:52px; height:52px; border-radius:999px; background:rgba(255,255,255,.9); color:var(--dpd-navy); display:flex; align-items:center; justify-content:center; }
.dpd-reel__len { position:absolute; top:.6rem; right:.6rem; background:rgba(0,0,0,.6); color:#fff; font-size:.7rem; font-weight:700; padding:.15rem .45rem; border-radius:.3rem; }
.dpd-reel__cap { position:absolute; left:.8rem; right:.8rem; bottom:.7rem; color:#fff; margin:0; }
.dpd-reel__cap strong { display:block; font-size:.85rem; } .dpd-reel__cap span { font-size:.76rem; color:#dbe2ee; }

/* 13 ─ faq */
.dpd-faqtabs { border:0; gap:.5rem; flex-wrap:wrap; }
.dpd-faqtab { min-height:44px; border:2px solid var(--dpd-border); background:#fff; color:var(--dpd-navy); font-weight:700; font-size:.85rem; padding:.5rem 1.1rem; border-radius:999px; }
.dpd-faqtab.active { background:var(--dpd-navy); border-color:var(--dpd-navy); color:#fff; }
.dpd-acc .accordion-item { border:1px solid var(--dpd-border); border-radius:.75rem !important; margin-bottom:.6rem; overflow:hidden; }
.dpd-acc .accordion-button { font-weight:700; color:var(--dpd-navy); box-shadow:none; }
.dpd-acc .accordion-button:not(.collapsed) { background:var(--dpd-offwhite); color:var(--dpd-navy); }
.dpd-acc .accordion-button:focus { box-shadow:none; border-color:var(--dpd-border); }
.dpd-acc .accordion-body { color:var(--dpd-muted); font-size:.9rem; }

/* 14 ─ blog */
.dpd-blog { color:var(--dpd-navy); }
.dpd-blog:hover { color:var(--dpd-navy); }
.dpd-blog__media { aspect-ratio:16/10; }
.dpd-blog__body { padding:1.1rem; }
.dpd-blog__tag { display:inline-block; font-size:.66rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--dpd-magenta); margin-bottom:.5rem; }
.dpd-blog__title { font-size:1rem; line-height:1.3; margin:0 0 .5rem; }
.dpd-blog__excerpt { font-size:.83rem; color:var(--dpd-muted); margin:0; line-height:1.55; }

/* 15 ─ final cta */
.dpd-cta { position:relative; color:#fff; overflow:hidden; }
.dpd-cta__bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.dpd-cta__scrim { position:absolute; inset:0; background:rgba(15,22,40,.72); }
.dpd-cta__inner { position:relative; padding-block:clamp(56px,8vw,100px); }
.dpd-cta__title { font-size:clamp(2rem,5vw,3.4rem); color:#fff; margin-bottom:1rem; }
.dpd-cta__sub { font-size:1.05rem; color:#dbe2ee; max-width:40rem; margin:0 auto 1.8rem; }

/* 16 ─ newsletter */
.dpd-news { background:var(--dpd-magenta); }
.dpd-news__inner { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.25rem; padding-block:32px; }
.dpd-news__title { color:#fff; font-size:1.4rem; margin:0 0 .25rem; }
.dpd-news__sub { color:rgba(255,255,255,.9); }
.dpd-news__form { display:flex; gap:.6rem; flex:1 1 360px; max-width:480px; }
.dpd-news__form .form-control { border-color:#fff; }
.dpd-news__form .btn { white-space:nowrap; }
