/* ============================================================================
   DTFDesigner — Home v3 "Studio Bloom" — production stylesheet
   Ported from the Claude Design React mockup (directions/studio-bloom-v3.jsx).
   Everything is scoped under .dtfv3 so it can't leak into the Flatsome theme.
   Fixed-1440 mockup rebuilt as a fluid, responsive layout.
   ========================================================================== */

/* --------------------------------------------------------------------------
   FULL-BLEED BREAKOUT — escape Flatsome's centered .row-main container so the
   v3 dark bands / sections span the full viewport. Only loaded on the v3 page
   (enqueued by slug), and page-id scoped so it can't affect anything else.
   -------------------------------------------------------------------------- */
/* ---- Homepage header: match Flatsome chrome to the v3 look ---- */
/* 1) drop the duplicate Flatsome pink promo top-bar (v3 banner stays) */
.page-id-35513 #top-bar{display:none !important;}
/* 2) recolor header to cream with the v3 hairline border */
.page-id-35513 #masthead,
.page-id-35513 .header-main,
.page-id-35513 .stuck #masthead,
.page-id-35513 .header-bg-color{background-color:#faf6ee !important;}
.page-id-35513 #header,
.page-id-35513 .header:not(.transparent) .header-wrapper{box-shadow:none !important;}
.page-id-35513 #masthead{border-bottom:1px solid #e3dccb;}
/* 3) nav links + header icons -> v3 ink / Inter Tight, hover rose */
.page-id-35513 .header-nav a.nav-top-link,
.page-id-35513 .header-nav-main > li > a,
.page-id-35513 .header-main .nav > li > a{color:#1f1d1a !important;font-family:'Inter Tight',-apple-system,system-ui,sans-serif;}
.page-id-35513 .header-nav a.nav-top-link:hover,
.page-id-35513 .header-main .nav > li > a:hover{color:#c97770 !important;}
/* 4) swap the pink PNG logo for a v3-style wordmark */
.page-id-35513 #logo img{display:none !important;}
.page-id-35513 #logo a{display:block;width:232px;max-width:46vw;height:40px;
  background:url(/wp-content/themes/flatsome-child/css/dtf-logo-v3.svg) no-repeat left center;background-size:contain;}

.page-id-35513 #content.page-wrapper{padding-top:0;padding-bottom:0;}
.page-id-35513 .row-main{max-width:100%;width:100%;margin:0;padding:0;}
.page-id-35513 .row-main>.col,
.page-id-35513 .row-main>.large-12{padding:0;margin:0;max-width:100%;flex-basis:100%;}
.page-id-35513 .row-main .col-inner{padding:0;}

.dtfv3 {
  /* palette */
  --cream:#faf6ee; --bone:#f1ebde; --sage:#7a8a6a; --sage-light:#cdd5bd;
  --rose:#c97770; --rose-light:#f0d9d7; --rose-tint:#f9efee;
  --butter:#f0d488; --ink:#1f1d1a; --muted:#6e6a62; --line:#e3dccb;
  --white:#ffffff; --success:#5a7a4a; --success-pop:#2f8f4e; --vermilion:#e2533f;
  --star:#e0a93a;
  /* extra tile backgrounds used in the design */
  --c-purple:#dbcde0; --c-peach:#f3d2c2; --c-blue:#dbe2eb; --c-mint:#cde0d6; --c-tan:#e8d4b0;

  --f-display:'Fraunces','Times New Roman',serif;
  --f-sans:'Inter Tight',-apple-system,system-ui,sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,monospace;

  --pad:clamp(20px,5vw,56px);
  --maxw:1320px;

  font-family:var(--f-sans);
  color:var(--ink);
  background:var(--cream);
  -webkit-font-smoothing:antialiased;
  line-height:1.4;
}
.dtfv3 *,.dtfv3 *::before,.dtfv3 *::after{box-sizing:border-box;}
.dtfv3 img{max-width:100%;display:block;}
.dtfv3 h1,.dtfv3 h2,.dtfv3 h3,.dtfv3 p{margin:0;}
.dtfv3 a{color:inherit;text-decoration:none;}
.dtfv3 button{font-family:inherit;}
.dtfv3 .v3-i{font-style:italic;color:var(--rose);}

/* shared inner container */
.dtfv3 .v3-wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad);}

/* ---- primitives ---------------------------------------------------------- */
.dtfv3 .v3-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;
  font-size:12px;font-weight:600;letter-spacing:.02em;line-height:1;}
.dtfv3 .v3-pill .v3-dot{width:6px;height:6px;border-radius:999px;display:inline-block;}
.dtfv3 .v3-pill--rose{color:var(--rose);border:1px solid rgba(201,119,112,.2);}
.dtfv3 .v3-pill--sage{color:var(--sage);border:1px solid rgba(122,138,106,.2);}
.dtfv3 .v3-pill--rose-fill{color:var(--rose);background:var(--rose-light);}
.dtfv3 .v3-pill--sage-fill{color:var(--sage);background:var(--sage-light);}
.dtfv3 .v3-pill--white{color:var(--rose);background:var(--white);}


.dtfv3 .v3-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:none;
  border-radius:999px;font-weight:700;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;text-align:center;}
.dtfv3 .v3-btn:hover{transform:translateY(-1px);filter:brightness(1.04);}
.dtfv3 .v3-btn-ink{background:var(--ink);color:var(--white);box-shadow:0 12px 28px -10px rgba(31,29,26,.4);}
.dtfv3 .v3-btn-rose{background:var(--rose);color:var(--white);box-shadow:0 12px 28px -10px rgba(201,119,112,.6);}
.dtfv3 .v3-btn-butter{background:var(--butter);color:var(--ink);}
.dtfv3 .v3-btn-block{width:100%;padding:18px;font-size:16px;}
.dtfv3 .v3-btn-lg{padding:20px 36px;font-size:17px;}
.dtfv3 .v3-arrow{font-size:18px;line-height:1;}

.dtfv3 .v3-check{color:var(--success);font-weight:700;}
.dtfv3 .v3-checks{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;margin-top:16px;}
.dtfv3 .v3-checks span{display:inline-flex;align-items:center;gap:6px;}

/* ---- TOP BANNER ---------------------------------------------------------- */
.dtfv3 .v3-banner{background:var(--ink);color:var(--cream);font-size:12px;letter-spacing:.02em;}
.dtfv3 .v3-banner .v3-wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding-top:10px;padding-bottom:10px;flex-wrap:wrap;}
.dtfv3 .v3-banner-items{display:flex;gap:28px;flex-wrap:wrap;}
.dtfv3 .v3-banner b{color:var(--butter);}
.dtfv3 .v3-banner .v3-code{font-family:var(--f-mono);}

/* ---- NAV ----------------------------------------------------------------- */
.dtfv3 .v3-nav{background:var(--cream);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;}
.dtfv3 .v3-nav .v3-wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding-top:18px;padding-bottom:18px;}
.dtfv3 .v3-brand{display:flex;align-items:center;gap:12px;}
.dtfv3 .v3-brand-name{font-family:var(--f-display);font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1;}
.dtfv3 .v3-brand-tag{font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:1px;}
.dtfv3 .v3-navlinks{display:flex;gap:28px;font-size:14px;font-weight:500;}
.dtfv3 .v3-navlinks a:hover{color:var(--rose);}
.dtfv3 .v3-navactions{display:flex;gap:10px;align-items:center;}
.dtfv3 .v3-navactions .v3-search{font-size:16px;}
.dtfv3 .v3-signin{background:none;border:none;cursor:pointer;font-size:13px;font-weight:500;}
.dtfv3 .v3-nav .v3-btn-ink{padding:10px 18px;font-size:13px;box-shadow:none;}

/* ---- HERO ---------------------------------------------------------------- */
.dtfv3 .v3-hero{position:relative;overflow:hidden;padding-top:56px;}
.dtfv3 .v3-hero-deco{position:absolute;top:30px;right:40px;opacity:.5;pointer-events:none;}
.dtfv3 .v3-hero-head{max-width:760px;position:relative;}
.dtfv3 .v3-proof{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.dtfv3 .v3-proof-muted{font-size:13px;color:var(--muted);}
.dtfv3 .v3-h1{font-family:var(--f-display);font-weight:400;letter-spacing:-.035em;line-height:.96;
  font-size:clamp(44px,7vw,88px);}
.dtfv3 .v3-h1 .v3-accent{position:relative;display:inline-block;font-style:italic;color:var(--rose);}
.dtfv3 .v3-h1 .v3-accent svg{position:absolute;bottom:-8px;left:0;width:100%;height:12px;}
.dtfv3 .v3-sub{font-size:18px;opacity:.75;line-height:1.55;margin-top:20px;max-width:600px;}

/* two-path chooser */
.dtfv3 .v3-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px;}
.dtfv3 .v3-card{background:var(--white);border-radius:24px;padding:28px;border:1px solid var(--line);
  box-shadow:0 24px 50px -32px rgba(31,29,26,.2);display:flex;flex-direction:column;}
.dtfv3 .v3-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;}
.dtfv3 .v3-card-title{font-family:var(--f-display);font-size:28px;font-weight:500;letter-spacing:-.02em;line-height:1;}
.dtfv3 .v3-card-sub{font-size:13px;color:var(--muted);margin-top:6px;}

/* print-area visual */
.dtfv3 .v3-print{background:var(--bone);border-radius:14px;position:relative;height:200px;}
.dtfv3 .v3-print-w{position:absolute;top:10px;left:50%;transform:translateX(-50%);
  font-family:var(--f-mono);font-size:10px;color:var(--muted);font-weight:700;}
.dtfv3 .v3-print-box{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:180px;height:131px;background:var(--rose);border-radius:6px;display:grid;place-items:center;
  color:var(--white);font-family:var(--f-display);font-style:italic;font-size:18px;font-weight:500;
  box-shadow:0 0 0 6px var(--rose-light);}
.dtfv3 .v3-print-box i{position:absolute;width:10px;height:10px;background:var(--white);
  border:2px solid var(--rose);border-radius:2px;}
.dtfv3 .v3-print-box i.tl{top:-5px;left:-5px;} .dtfv3 .v3-print-box i.tr{top:-5px;right:-5px;}
.dtfv3 .v3-print-box i.bl{bottom:-5px;left:-5px;} .dtfv3 .v3-print-box i.br{bottom:-5px;right:-5px;}
.dtfv3 .v3-print-h{position:absolute;right:12px;top:50%;transform:translateY(-50%);
  font-family:var(--f-mono);font-size:10px;color:var(--muted);font-weight:700;display:flex;
  flex-direction:column;align-items:center;gap:2px;line-height:1;}

/* sliders (static visuals) */
.dtfv3 .v3-sliders{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.dtfv3 .v3-slider-top{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);
  font-family:var(--f-mono);font-weight:700;margin-bottom:6px;letter-spacing:.05em;text-transform:uppercase;}
.dtfv3 .v3-slider-top b{color:var(--ink);font-weight:700;}
.dtfv3 .v3-slider-track{height:6px;background:var(--line);border-radius:999px;position:relative;}
.dtfv3 .v3-slider-fill{position:absolute;left:0;top:0;bottom:0;background:var(--rose);border-radius:999px;}
.dtfv3 .v3-slider-knob{position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;
  border-radius:999px;background:var(--white);border:3px solid var(--rose);box-shadow:0 4px 10px -2px rgba(31,29,26,.2);}

/* price readout */
.dtfv3 .v3-readout{margin-top:18px;padding:18px;background:var(--cream);border-radius:14px;
  border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;}
.dtfv3 .v3-readout-label{font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:700;}
.dtfv3 .v3-readout-price{font-family:var(--f-display);font-size:52px;font-weight:600;line-height:1;margin-top:2px;}
.dtfv3 .v3-save{text-align:right;}
.dtfv3 .v3-save-line{font-size:13px;font-weight:700;color:var(--success);}
.dtfv3 .v3-save-sub{font-size:11px;color:var(--muted);margin-top:2px;}

/* browse collage */
.dtfv3 .v3-collage{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.dtfv3 .v3-collage-cell{border-radius:12px;overflow:hidden;border:1px solid var(--line);}
.dtfv3 .v3-collage-art{aspect-ratio:1.5;display:grid;place-items:center;text-align:center;line-height:1;}
.dtfv3 .v3-collage-glyph{font-size:26px;}
.dtfv3 .v3-collage-name{font-family:var(--f-display);font-style:italic;font-size:13px;margin-top:4px;}
.dtfv3 .v3-collage-meta{padding:7px 10px;display:flex;justify-content:space-between;align-items:center;font-size:12px;}
.dtfv3 .v3-collage-meta .m{color:var(--muted);}
.dtfv3 .v3-collage-meta .p{font-family:var(--f-display);font-weight:600;}
.dtfv3 .v3-chips{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap;}
.dtfv3 .v3-chip{font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--bone);
  color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block;}
.dtfv3 .v3-chip:hover{background:var(--sage-light);}
.dtfv3 .v3-grow{flex:1;}

/* hero stat band */
.dtfv3 .v3-statband{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:48px;
  padding-top:32px;border-top:1px solid var(--line);}
.dtfv3 .v3-stat{padding-right:16px;}
.dtfv3 .v3-stat-n{font-family:var(--f-display);font-size:36px;font-weight:500;letter-spacing:-.02em;line-height:1;}
.dtfv3 .v3-stat-u{font-size:13px;font-weight:600;margin-top:6px;}
.dtfv3 .v3-stat-l{font-size:12px;color:var(--muted);margin-top:2px;}

/* ---- generic section heading -------------------------------------------- */
.dtfv3 section{padding-top:88px;}
.dtfv3 .v3-sec-head{max-width:700px;margin-bottom:40px;}
.dtfv3 .v3-h2{font-family:var(--f-display);font-weight:500;letter-spacing:-.03em;line-height:1;
  font-size:clamp(34px,5vw,52px);margin-top:14px;}
.dtfv3 .v3-sec-p{font-size:16px;color:var(--muted);margin-top:12px;line-height:1.6;}
.dtfv3 .v3-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;flex-wrap:wrap;}
.dtfv3 .v3-link-more{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px;cursor:pointer;}
.dtfv3 .v3-link-more:hover{color:var(--rose);}

/* ---- HOW IT WORKS -------------------------------------------------------- */
.dtfv3 .v3-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.dtfv3 .v3-step{background:var(--white);border-radius:24px;padding:28px;border:1px solid var(--line);}
.dtfv3 .v3-step-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;}
.dtfv3 .v3-step-num{font-family:var(--f-display);font-size:56px;font-style:italic;font-weight:400;
  line-height:.9;letter-spacing:-.04em;}
.dtfv3 .v3-step-ill{border-radius:16px;height:140px;overflow:hidden;}
.dtfv3 .v3-step-h{font-family:var(--f-display);font-size:24px;font-weight:500;margin-top:22px;letter-spacing:-.02em;}
.dtfv3 .v3-step-p{font-size:14px;color:var(--muted);line-height:1.6;margin-top:8px;}
/* step illustrations */
.dtfv3 .v3-ill-upload{background:var(--rose-light);display:grid;place-items:center;}
.dtfv3 .v3-ill-upload .box{width:180px;height:100px;border:2px dashed rgba(201,119,112,.5);border-radius:12px;
  display:grid;place-items:center;text-align:center;color:var(--rose);}
.dtfv3 .v3-ill-upload .box .a{font-size:24px;} .dtfv3 .v3-ill-upload .box .l{font-size:11px;font-weight:600;
  margin-top:4px;letter-spacing:.06em;text-transform:uppercase;}
.dtfv3 .v3-ill-preview{background:var(--sage-light);padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.dtfv3 .v3-ill-preview .p{background:var(--white);border-radius:8px;display:grid;place-items:center;}
.dtfv3 .v3-ill-preview .p .art{font-family:var(--f-display);font-style:italic;font-size:20px;color:var(--sage);}
.dtfv3 .v3-ill-prod{background:var(--bone);padding:18px;font-family:var(--f-mono);font-size:11px;color:var(--ink);}
.dtfv3 .v3-ill-prod .r{display:flex;justify-content:space-between;margin-bottom:8px;}
.dtfv3 .v3-ill-prod .muted{color:var(--muted);} .dtfv3 .v3-ill-prod .ok{color:var(--success);font-weight:700;}
.dtfv3 .v3-ill-prod .l{margin-bottom:4px;} .dtfv3 .v3-ill-prod .butter{color:#b78a2a;}
.dtfv3 .v3-ill-prod .rose{color:var(--rose);}

/* ---- PRICING ------------------------------------------------------------- */
.dtfv3 .v3-price-card{background:var(--white);border-radius:28px;padding:clamp(28px,4vw,56px);
  border:1px solid var(--line);position:relative;overflow:hidden;}
.dtfv3 .v3-price-deco{position:absolute;top:-40px;right:-40px;opacity:.3;pointer-events:none;}
.dtfv3 .v3-price-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(28px,4vw,56px);align-items:center;position:relative;}
.dtfv3 .v3-price-p{font-size:15px;color:var(--muted);line-height:1.65;margin-top:18px;max-width:380px;}
.dtfv3 .v3-mono-box{margin-top:20px;padding:14px;background:var(--bone);border-radius:12px;
  font-family:var(--f-mono);font-size:12px;color:var(--ink);line-height:1.7;}
.dtfv3 .v3-mono-box b{color:var(--rose);}
.dtfv3 .v3-feat-list{margin-top:24px;display:grid;gap:10px;}
.dtfv3 .v3-feat{display:flex;gap:12px;align-items:flex-start;}
.dtfv3 .v3-feat-tick{width:22px;height:22px;border-radius:999px;background:var(--rose);color:var(--white);
  display:grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0;margin-top:2px;}
.dtfv3 .v3-feat-h{font-weight:600;font-size:14px;} .dtfv3 .v3-feat-p{font-size:13px;color:var(--muted);line-height:1.5;}
.dtfv3 .v3-compare{background:var(--bone);border-radius:24px;padding:clamp(20px,3vw,32px);}
.dtfv3 .v3-compare-label{font-size:11px;color:var(--muted);margin-bottom:16px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;}
.dtfv3 .v3-compare-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.dtfv3 .v3-comp-cap{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted);}
.dtfv3 .v3-comp-cap.rose{color:var(--rose);font-weight:700;}
.dtfv3 .v3-comp-sub{font-family:var(--f-display);font-size:18px;font-weight:600;margin-top:4px;}
.dtfv3 .v3-comp-stage{margin-top:16px;background:var(--white);border-radius:12px;padding:14px;position:relative;height:240px;border:1px solid var(--line);}
.dtfv3 .v3-comp-stage.win{border:2px solid var(--rose);}
.dtfv3 .v3-comp-bucket{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:160px;background:rgba(110,106,98,.2);border-radius:4px;}
.dtfv3 .v3-comp-bucket .blank{position:absolute;left:0;right:0;height:calc(50% - 58px);display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--muted);font-family:var(--f-mono);font-weight:700;}
.dtfv3 .v3-comp-bucket .blank.t{top:0;} .dtfv3 .v3-comp-bucket .blank.b{bottom:0;}
.dtfv3 .v3-comp-dash{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:160px;height:116px;border:2px dashed var(--rose);border-radius:4px;z-index:1;}
.dtfv3 .v3-comp-art{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:152px;height:108px;background:var(--rose);border-radius:3px;display:grid;place-items:center;color:var(--white);font-family:var(--f-display);font-style:italic;font-size:16px;z-index:2;}
.dtfv3 .v3-comp-stage.win .v3-comp-art{border-radius:4px;box-shadow:0 0 0 4px var(--rose-light);}
.dtfv3 .v3-comp-tag{position:absolute;top:8px;left:14px;font-size:10px;color:var(--muted);font-family:var(--f-mono);font-weight:700;}
.dtfv3 .v3-comp-tag.rose{color:var(--rose);}
.dtfv3 .v3-comp-foot{position:absolute;bottom:8px;left:14px;right:14px;font-size:10px;color:var(--rose);font-family:var(--f-mono);text-align:center;font-weight:700;}
.dtfv3 .v3-comp-pay{margin-top:12px;display:flex;justify-content:space-between;align-items:baseline;}
.dtfv3 .v3-comp-pay .lbl{font-size:12px;color:var(--muted);}
.dtfv3 .v3-comp-pay .amt{font-family:var(--f-display);font-size:26px;font-weight:600;}
.dtfv3 .v3-comp-pay .amt.old{color:var(--muted);text-decoration:line-through;}
.dtfv3 .v3-comp-pay .amt.new{color:var(--rose);font-weight:700;}
.dtfv3 .v3-savings-band{margin-top:24px;padding:16px;background:var(--rose-light);border-radius:12px;text-align:center;font-size:14px;color:var(--ink);}
.dtfv3 .v3-savings-band b.big{color:var(--rose);font-family:var(--f-display);font-size:18px;}

/* ---- REORDER ------------------------------------------------------------- */
.dtfv3 .v3-split{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(28px,4vw,56px);align-items:center;}
.dtfv3 .v3-reorder-card{background:var(--white);border-radius:24px;padding:24px;border:1px solid var(--line);
  box-shadow:0 24px 50px -32px rgba(31,29,26,.2);}
.dtfv3 .v3-reorder-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;}
.dtfv3 .v3-reorder-top .t{font-family:var(--f-display);font-size:18px;font-weight:600;}
.dtfv3 .v3-reorder-top .n{font-family:var(--f-mono);font-size:11px;color:var(--muted);}
.dtfv3 .v3-reorder-row{display:flex;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--line);}
.dtfv3 .v3-reorder-row:first-of-type{border-top:none;}
.dtfv3 .v3-reorder-thumb{width:48px;height:48px;border-radius:10px;display:grid;place-items:center;font-size:22px;flex-shrink:0;}
.dtfv3 .v3-reorder-info{flex:1;}
.dtfv3 .v3-reorder-info .nm{font-family:var(--f-display);font-size:16px;font-weight:600;line-height:1.1;}
.dtfv3 .v3-reorder-info .mt{font-size:12px;color:var(--muted);margin-top:2px;}
.dtfv3 .v3-reorder-info .mt b{color:var(--success);font-weight:600;}
.dtfv3 .v3-reorder-row .v3-btn-rose{padding:9px 16px;font-size:12px;box-shadow:none;flex-shrink:0;}

/* ---- CATEGORIES ---------------------------------------------------------- */
.dtfv3 .v3-grid-6{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
.dtfv3 .v3-cat{background:var(--white);border-radius:20px;overflow:hidden;border:1px solid var(--line);cursor:pointer;
  transition:transform .12s ease,box-shadow .12s ease;}
.dtfv3 .v3-cat:hover{transform:translateY(-3px);box-shadow:0 16px 30px -20px rgba(31,29,26,.35);}
.dtfv3 .v3-cat-art{aspect-ratio:1;display:grid;place-items:center;position:relative;}
.dtfv3 .v3-cat-glyph{font-size:56px;opacity:.95;}
.dtfv3 .v3-cat-count{position:absolute;top:8px;right:8px;padding:3px 8px;background:var(--white);border-radius:999px;font-size:10px;font-weight:700;}
.dtfv3 .v3-cat-body{padding:12px 14px;}
.dtfv3 .v3-cat-t{font-family:var(--f-display);font-weight:600;font-size:16px;}
.dtfv3 .v3-cat-n{font-size:11px;color:var(--muted);margin-top:2px;}

/* ---- RECENT DESIGNS ------------------------------------------------------ */
.dtfv3 .v3-grid-8{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;}
.dtfv3 .v3-tile{background:var(--white);border-radius:16px;overflow:hidden;border:1px solid var(--line);cursor:pointer;
  transition:transform .12s ease,box-shadow .12s ease;}
.dtfv3 .v3-tile:hover{transform:translateY(-3px);box-shadow:0 16px 30px -20px rgba(31,29,26,.35);}
.dtfv3 .v3-tile-art{aspect-ratio:1;position:relative;display:grid;place-items:center;padding:14px;text-align:center;line-height:1.05;}
.dtfv3 .v3-tile-badge{position:absolute;top:8px;left:8px;background:var(--white);color:var(--ink);padding:3px 8px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.04em;}
.dtfv3 .v3-tile-fav{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:999px;background:var(--white);display:grid;place-items:center;font-size:11px;}
.dtfv3 .v3-tile-glyph{font-size:30px;margin-bottom:4px;}
.dtfv3 .v3-tile-name{font-family:var(--f-display);font-style:italic;font-size:18px;font-weight:500;}
.dtfv3 .v3-tile-body{padding:10px 12px;}
.dtfv3 .v3-tile-cat{font-size:10px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;}
.dtfv3 .v3-tile-row{display:flex;justify-content:space-between;align-items:baseline;margin-top:2px;min-height:18px;}
.dtfv3 .v3-tile-price{font-family:var(--f-display);font-weight:600;font-size:14px;}
/* real product images injected by the dynamic shortcodes (recent / collage) */
.dtfv3 .v3-tile-art.has-img{padding:0;}
.dtfv3 .v3-tile-art.has-img img{width:100%;height:100%;object-fit:cover;display:block;}
.dtfv3 .v3-collage-art.has-img{padding:0;}
.dtfv3 .v3-collage-art.has-img img{width:100%;height:100%;object-fit:cover;display:block;}
.dtfv3 .v3-tile-name-sm{font-family:var(--f-display);font-size:14px;font-weight:600;line-height:1.15;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.dtfv3 .v3-tile-body .v3-tile-cat{margin-top:4px;}

.dtfv3 .v3-liveedit{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:var(--rose);}
.dtfv3 .v3-liveedit .d{width:5px;height:5px;border-radius:999px;background:var(--rose);display:inline-block;}
/* "Live Edit" advertises an unshipped feature — hidden; price right-aligns alone. */
.dtfv3 .v3-liveedit{display:none;}
.dtfv3 .v3-tile-row{justify-content:flex-end;}

/* ---- GUARANTEE STRIP ----------------------------------------------------- */
.dtfv3 .v3-guarantee{background:var(--ink);color:var(--cream);border-radius:28px;padding:40px 48px;
  display:grid;grid-template-columns:repeat(3,1fr);gap:32px;position:relative;overflow:hidden;}
.dtfv3 .v3-guarantee-deco{position:absolute;top:-40px;right:-40px;opacity:.18;pointer-events:none;}
.dtfv3 .v3-guar{position:relative;}
.dtfv3 .v3-guar-ic{width:44px;height:44px;border-radius:999px;background:var(--butter);color:var(--ink);
  display:grid;place-items:center;font-family:var(--f-display);font-style:italic;font-weight:700;font-size:22px;}
.dtfv3 .v3-guar-h{font-family:var(--f-display);font-size:24px;font-weight:500;margin-top:16px;letter-spacing:-.01em;}
.dtfv3 .v3-guar-p{font-size:14px;opacity:.78;line-height:1.6;margin-top:8px;}

/* ---- FAQ ----------------------------------------------------------------- */
.dtfv3 .v3-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(28px,4vw,56px);}
.dtfv3 .v3-faq-aside .v3-h2{font-size:clamp(32px,4vw,44px);}
.dtfv3 .v3-faq-aside p{font-size:14px;color:var(--muted);margin-top:14px;line-height:1.6;}
.dtfv3 .v3-faq-btn{margin-top:18px;background:transparent;border:1.5px solid var(--ink);padding:12px 18px;
  border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;}
.dtfv3 .v3-faq-btn:hover{background:var(--ink);color:var(--cream);}
.dtfv3 details.v3-q{border-top:1px solid var(--line);padding:20px 0;}
.dtfv3 details.v3-q summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;
  font-family:var(--f-display);font-size:20px;font-weight:600;}
.dtfv3 details.v3-q summary::-webkit-details-marker{display:none;}
.dtfv3 details.v3-q summary .pm{color:var(--rose);}
.dtfv3 details.v3-q[open] summary .pm::after{content:'';}
.dtfv3 details.v3-q .a{font-size:14px;color:var(--muted);line-height:1.65;margin-top:10px;max-width:600px;}

/* ---- FINAL CTA ----------------------------------------------------------- */
.dtfv3 .v3-finalcta{border-radius:32px;background:var(--rose-light);padding:clamp(48px,7vw,80px) var(--pad);
  position:relative;overflow:hidden;text-align:center;}
.dtfv3 .v3-finalcta-deco1{position:absolute;top:30px;left:60px;opacity:.6;pointer-events:none;}
.dtfv3 .v3-finalcta-deco2{position:absolute;bottom:30px;right:60px;opacity:.6;pointer-events:none;}
.dtfv3 .v3-finalcta h2{font-family:var(--f-display);font-weight:500;letter-spacing:-.04em;line-height:.96;
  font-size:clamp(44px,7vw,88px);margin:24px 0 0;}
.dtfv3 .v3-finalcta p{font-size:18px;opacity:.7;margin:14px auto 0;max-width:580px;}
.dtfv3 .v3-finalcta p b{font-family:var(--f-mono);color:var(--rose);}
.dtfv3 .v3-finalcta-actions{display:flex;gap:12px;margin-top:36px;justify-content:center;align-items:center;flex-wrap:wrap;}

/* ---- STICKY BAR ---------------------------------------------------------- */
.dtfv3 .v3-sticky{position:sticky;bottom:16px;margin:56px var(--pad) 16px;z-index:20;}
.dtfv3 .v3-sticky-inner{background:var(--ink);color:var(--cream);border-radius:999px;
  padding:14px 20px 14px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;
  box-shadow:0 20px 40px -12px rgba(31,29,26,.4);}
.dtfv3 .v3-sticky-info{display:flex;align-items:center;gap:16px;font-size:14px;flex-wrap:wrap;}
.dtfv3 .v3-sticky-info .sep{opacity:.4;} .dtfv3 .v3-sticky-info .cut{color:var(--butter);}
.dtfv3 .v3-sticky .v3-btn-butter{padding:12px 22px;font-size:13px;flex-shrink:0;}

/* ---- FOOTER -------------------------------------------------------------- */
.dtfv3 .v3-footer{background:var(--ink);color:var(--cream);margin-top:56px;}
.dtfv3 .v3-footer .v3-wrap{padding-top:56px;padding-bottom:28px;}
.dtfv3 .v3-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:32px;margin-bottom:40px;}
.dtfv3 .v3-footer-brand{font-family:var(--f-display);font-size:22px;font-weight:600;}
.dtfv3 .v3-footer-blurb{font-size:13px;color:rgba(250,246,238,.6);margin-top:12px;max-width:280px;line-height:1.6;}
.dtfv3 .v3-footer-rating{margin-top:16px;font-size:13px;}
.dtfv3 .v3-pays{margin-top:20px;display:flex;gap:8px;flex-wrap:wrap;}
.dtfv3 .v3-pay{padding:4px 10px;border-radius:6px;border:1px solid rgba(250,246,238,.2);font-size:10px;font-weight:600;}
.dtfv3 .v3-footer-col h4{font-family:var(--f-display);font-size:14px;font-weight:700;margin:0 0 14px;}
.dtfv3 .v3-footer-col a{display:block;font-size:13px;margin-bottom:8px;color:rgba(250,246,238,.8);}
.dtfv3 .v3-footer-col a:hover{color:var(--cream);}
.dtfv3 .v3-footer-bottom{padding-top:20px;border-top:1px solid rgba(250,246,238,.12);
  display:flex;justify-content:space-between;gap:16px;font-size:12px;color:rgba(250,246,238,.5);flex-wrap:wrap;}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:1100px){
  .dtfv3 .v3-grid-8{grid-template-columns:repeat(4,1fr);}
  .dtfv3 .v3-navlinks{display:none;}
}
@media (max-width:920px){
  .dtfv3 .v3-paths{grid-template-columns:1fr;}
  .dtfv3 .v3-price-grid{grid-template-columns:1fr;}
  .dtfv3 .v3-split{grid-template-columns:1fr;}
  .dtfv3 .v3-faq{grid-template-columns:1fr;}
  .dtfv3 .v3-grid-3{grid-template-columns:1fr;}
  .dtfv3 .v3-guarantee{grid-template-columns:1fr;}
  .dtfv3 .v3-grid-6{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:640px){
  .dtfv3 section{padding-top:56px;}
  .dtfv3 .v3-grid-8{grid-template-columns:repeat(2,1fr);}
  .dtfv3 .v3-grid-6{grid-template-columns:repeat(2,1fr);}
  .dtfv3 .v3-statband{grid-template-columns:1fr;gap:20px;}
  .dtfv3 .v3-stat{padding-right:0;border-bottom:1px solid var(--line);padding-bottom:16px;}
  .dtfv3 .v3-brand-tag{display:none;}
  .dtfv3 .v3-sticky-info .sep,.dtfv3 .v3-sticky-info .cut{display:none;}
  .dtfv3 .v3-footer-grid{grid-template-columns:1fr 1fr;}
  .dtfv3 .v3-footer-brand-col{grid-column:1 / -1;}
  .dtfv3 .v3-readout-price{font-size:42px;}
  .dtfv3 .v3-nav .v3-signin{display:none;}
}
@media (max-width:420px){
  .dtfv3 .v3-collage{grid-template-columns:1fr;}
  .dtfv3 .v3-grid-6{grid-template-columns:1fr 1fr;}
}
