/*
Theme Name: Drifting Time Coffee - Perfect Cup v3.5
Theme URI: https://driftingtimecoffee.com
Author: Drifting Time Coffee
Description: Premium coffee theme with surfer attitude, WooCommerce shop styling, and MailPoet Coffee Club discount signup flow.
Version: 3.7
Requires at least: 6.0
Tested up to: 6.6
Text Domain: drifting-time-coffee
*/
:root{
  --espresso:#190803;--deep:#080302;--coffee:#3b1607;--roast:#6f2d09;--caramel:#b75a18;--sunset:#ff8a16;--gold:#ffd15f;--cream:#fff6d8;--foam:#fffaf0;--sand:#f6d597;--ink:#1c0b04;--green:#0f2a1f;--ocean:#0b3638;--shadow:0 32px 90px rgba(8,3,2,.35)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--foam);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(1200px,92vw);margin:auto}
.site-header{position:absolute;top:32px;left:0;right:0;z-index:50;background:linear-gradient(180deg,rgba(8,3,2,.62),rgba(8,3,2,.0));color:var(--cream)}.header-row{display:flex;align-items:center;justify-content:space-between;gap:36px;padding:20px 0}.brand{display:flex;align-items:center;gap:18px}.brand img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 8px 22px rgba(0,0,0,.42))}.brand-name{font-weight:900;text-transform:uppercase;letter-spacing:.18em;font-size:16px;white-space:nowrap}.nav{display:flex;align-items:center;gap:34px;margin-left:auto;flex-wrap:wrap;font-weight:800;text-transform:uppercase;letter-spacing:.11em;font-size:13px}.nav a{opacity:.95}.nav a:hover{color:var(--gold)}
.topbar{height:32px;display:flex;align-items:center;justify-content:center;background:var(--deep);color:var(--cream);text-align:center;text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:900;position:relative;z-index:70}.hero{position:relative;min-height:96vh;display:flex;align-items:center;overflow:hidden;background:#111}.hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(8,3,2,.88) 0%,rgba(8,3,2,.72) 34%,rgba(8,3,2,.28) 64%,rgba(8,3,2,.04) 100%),linear-gradient(180deg,rgba(8,3,2,.48),rgba(8,3,2,.12) 48%,rgba(8,3,2,.60)),url('assets/img/hero-surfer-coast.png');background-size:cover;background-position:center center;transform:scale(1.01)}.hero-content{position:relative;z-index:2;padding:172px 0 78px;max-width:760px}.eyebrow{color:var(--sunset);font-weight:900;text-transform:uppercase;letter-spacing:.18em;margin:0 0 18px;font-size:15px}.hero h1{font-family:Georgia,'Times New Roman',serif;color:var(--cream);font-size:clamp(58px,8.3vw,124px);line-height:.98;margin:0 0 20px;text-shadow:0 6px 24px rgba(0,0,0,.48)}.tagline{color:var(--sunset);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:20px;margin:0 0 18px;padding-top:14px;border-top:3px solid rgba(255,138,22,.8);display:inline-block}.hero p{color:#fff9e8;font-size:clamp(18px,2vw,24px);max-width:560px;margin:0 0 30px}.btns{display:flex;gap:16px;flex-wrap:wrap}.btn{display:inline-block;background:linear-gradient(135deg,var(--sunset),#ffb12c);color:var(--deep);font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:15px 25px;border-radius:3px;border:2px solid var(--sunset);box-shadow:0 18px 36px rgba(255,138,22,.22)}.btn:hover{filter:saturate(1.2) brightness(1.04);transform:translateY(-1px)}.btn.secondary{background:rgba(8,3,2,.24);color:var(--sunset);border-color:var(--sunset);box-shadow:none}.hero-strip{position:relative;z-index:3;background:linear-gradient(90deg,var(--deep),#111c18);color:var(--cream);border-top:1px solid rgba(255,209,95,.25)}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:28px 0}.strip-item{display:flex;gap:15px;align-items:flex-start;border-right:1px solid rgba(255,246,216,.24);padding-right:20px}.strip-item:last-child{border-right:0}.icon{color:var(--gold);font-size:31px;line-height:1}.strip-item b{display:block;text-transform:uppercase;letter-spacing:.08em;font-size:13px;margin-bottom:4px}.strip-item span{color:#ebd7aa;font-size:14px}.section{padding:86px 0}.section h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,5vw,72px);line-height:1.04;margin:0 0 16px;color:var(--espresso);text-align:center}.lead{font-size:20px;max-width:820px;margin:0 auto 40px;text-align:center;color:#4b2411}.journey{background:var(--foam)}.story{display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}.story-copy{background:var(--cream);border-left:8px solid var(--sunset);padding:38px;box-shadow:var(--shadow)}.story-copy h2{text-align:left}.story-copy p{font-size:20px}.photo-card{min-height:460px;border-radius:2px;background:linear-gradient(160deg,rgba(8,3,2,.1),rgba(8,3,2,.62)),url('assets/img/hero-surfer-coast.png');background-size:cover;background-position:66% center;box-shadow:var(--shadow)}.origins{background:linear-gradient(180deg,#fffaf0,var(--cream))}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.card{background:#fff;border:1px solid #ead9b3;box-shadow:0 18px 50px rgba(59,22,7,.13);overflow:hidden}.card .top{height:190px;background:linear-gradient(145deg,rgba(15,42,31,.88),rgba(255,138,22,.35)),url('assets/img/hero-surfer-coast.png');background-size:cover;background-position:center}.card:nth-child(2) .top{background-position:60% center}.card:nth-child(3) .top{background-position:35% center}.card:nth-child(4) .top{background-position:80% center}.card .body{padding:24px}.stamp{display:inline-block;color:var(--sunset);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:12px;margin-bottom:10px}.card h3{font-family:Georgia,serif;font-size:31px;margin:0 0 8px;color:var(--espresso)}.meta{font-weight:900;color:var(--roast);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.shop-cta{background:var(--deep);color:var(--cream);text-align:center}.shop-cta h2{color:var(--cream)}.shop-cta .lead{color:#efd8aa}.product-row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}.product-feature{background:linear-gradient(180deg,#fff7dc,#f6d597);color:var(--espresso);padding:28px;border-top:5px solid var(--sunset);box-shadow:0 20px 48px rgba(0,0,0,.25)}.product-feature h3{font-family:Georgia,serif;font-size:32px;margin:0 0 8px}.subscribe{background:linear-gradient(115deg,rgba(8,3,2,.94),rgba(25,8,3,.76));color:var(--cream);text-align:center}.subscribe h2{color:var(--cream)}.subscribe .lead{color:#fff3cc}.checks{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:24px 0}.checks span{background:rgba(255,209,95,.13);border:1px solid rgba(255,209,95,.7);color:var(--gold);padding:10px 15px;border-radius:999px;font-weight:800}.footer{background:var(--deep);color:var(--cream);padding:46px 0;text-align:center}.footer img{width:110px}.footer p{color:#e8d0a2;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.page-hero{min-height:52vh}.page-hero .hero-content{padding-top:160px}.content-page{padding:72px 0;background:var(--foam)}.content-card{background:#fff;padding:42px;box-shadow:0 18px 45px rgba(59,22,7,.12)}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.plan{background:#fff;border:1px solid #ead9b3;padding:30px;box-shadow:0 15px 38px rgba(59,22,7,.12)}.plan.featured{border-top:6px solid var(--sunset);transform:translateY(-8px)}.plan h3{font-family:Georgia,serif;font-size:34px;margin:0;color:var(--espresso)}.plan strong{display:block;color:var(--sunset);margin:15px 0;font-size:18px}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px!important}.woocommerce ul.products li.product{width:auto!important;margin:0!important;background:#fff!important;border:1px solid #ead9b3!important;padding:18px!important;box-shadow:0 16px 40px rgba(59,22,7,.13)!important;text-align:left!important}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:Georgia,serif!important;font-size:24px!important;color:var(--espresso)!important}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--sunset)!important;color:var(--deep)!important;border-radius:3px!important;text-transform:uppercase!important;font-weight:900!important;letter-spacing:.06em!important}.woocommerce span.onsale{background:var(--sunset)!important;color:var(--deep)!important}.woocommerce div.product .product_title{font-family:Georgia,serif;color:var(--espresso);font-size:48px}.woocommerce .price{color:var(--roast)!important;font-weight:900!important}
@media(max-width:900px){.site-header{position:absolute;top:32px}.header-row{align-items:flex-start}.brand img{width:58px;height:58px}.brand-name{font-size:13px}.nav{gap:11px;font-size:11px}.hero-content{padding-top:150px}.strip-grid,.cards,.product-row,.plans,.story{grid-template-columns:1fr}.strip-item{border-right:0;border-bottom:1px solid rgba(255,246,216,.18);padding-bottom:18px}.woocommerce ul.products{grid-template-columns:1fr!important}.hero h1{font-size:clamp(42px,14vw,74px)}}

.subscription-note{margin-top:24px;color:#5a2b12;font-size:15px}.subscription-product-link{margin-top:24px}

/* v2.1 clickable product/origin cards */
.cards a.card,.product-row a.product-feature{display:block;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.cards a.card:hover,.product-row a.product-feature:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(59,22,7,.22)}.card-link{display:inline-block;margin-top:12px;color:var(--sunset);font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:12px;border-bottom:2px solid var(--sunset);padding-bottom:3px}

.subscription-plans .plan{display:block;text-decoration:none;color:inherit;transition:transform .22s ease, box-shadow .22s ease;}
.subscription-plans .plan:hover{transform:translateY(-6px);box-shadow:0 22px 60px rgba(53,20,1,.22);}
.subscription-help{margin-top:34px;background:#fff8df;border:1px solid rgba(120,52,7,.18);border-radius:24px;padding:28px;text-align:center;}
.subscription-help code{background:#351401;color:#FEF6CF;padding:3px 7px;border-radius:6px;}

.subscription-plans form{margin-top:18px;display:grid;gap:10px}.subscription-plans label{font-weight:900;text-transform:uppercase;letter-spacing:.06em;font-size:12px;color:var(--roast)}.subscription-plans select{width:100%;padding:12px 13px;border:1px solid #d9c295;background:#fffaf0;color:var(--espresso);font-weight:700}.subscription-plans button{margin-top:8px;width:100%;cursor:pointer}.subscription-help{line-height:1.6}.subscription-help code{white-space:nowrap}


/* Subscription add-to-cart buttons */
.subscription-plans form .add-subscription{
  width:100%;
  margin-top:16px;
  text-align:center;
  cursor:pointer;
}
.subscription-plans form label{
  display:block;
  margin-top:12px;
  font-weight:700;
}
.subscription-plans form select{
  width:100%;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(50,35,20,.25);
  margin-top:6px;
}


/* Front page subscription selections */
.front-subscription-plans{margin-top:32px;text-align:left;}
.subscribe .front-subscription-plans .plan{background:linear-gradient(180deg,#fff7dc,#f6d597);color:var(--espresso);}
.subscribe .front-subscription-plans .plan p{color:#4b2411;}
.subscribe .subscription-note{color:#efd8aa;}

/* Match Start Drifting card typography with Discover Journey cards */
.shop-cta .product-feature h3{font-family:Georgia,serif;font-size:31px;line-height:1.1;margin:0 0 8px;color:var(--espresso);}
.shop-cta .product-feature p{font-size:16px;line-height:1.55;color:#4b2411;margin:0 0 10px;}
.shop-cta .product-feature .card-link{font-size:12px;}

/* Cart review/edit links for subscriptions */
.edit-cart-link{
  display:block;
  margin-top:10px;
  text-align:center;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:12px;
  color:var(--roast);
  text-decoration:underline;
  text-underline-offset:4px;
}
.nav a[href$="/cart/"]{color:var(--gold);}


/* Cart actions for Discover the Journey and Start Drifting product cards */
.product-card .card-main{display:block;text-decoration:none;color:inherit;}
.product-card .card-actions{padding:0 24px 24px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.shop-cta .product-feature{display:block;text-decoration:none;}
.shop-cta .product-feature .edit-cart-link,.product-card .edit-cart-link{margin-top:12px;}
.product-card .card-link,.shop-cta .product-feature .card-link{background:var(--sunset);color:var(--deep);border:2px solid var(--sunset);border-radius:3px;padding:10px 14px;text-decoration:none;}
.product-card .card-link:hover,.shop-cta .product-feature .card-link:hover{filter:saturate(1.2) brightness(1.04);}

.subscription-price{font-family:Georgia,serif;font-size:1.35rem;font-weight:700;margin:14px 0 16px;color:#2f2217}.subscription-price small{font-family:inherit;font-size:.85rem;font-weight:500;opacity:.72}


/* Cart and checkout subscription opt-in */
.dtc-cart-subscribe-option{margin-top:10px;padding:10px 12px;background:#fff7dc;border:1px solid #ead9b3;border-radius:4px;color:#3b1607;}
.dtc-cart-subscribe-option label{display:flex;gap:8px;align-items:center;font-weight:900;text-transform:uppercase;letter-spacing:.04em;font-size:12px;}
.dtc-cart-subscribe-option input{width:16px;height:16px;}
.dtc-cart-subscribe-option small{display:block;margin-top:5px;color:#6b3719;font-size:12px;line-height:1.35;}
.dtc-checkout-subscribe-all{margin:24px 0;padding:18px;background:#fff7dc;border:1px solid #ead9b3;}
.dtc-checkout-subscribe-all h3{font-family:Georgia,serif;color:var(--espresso);margin-top:0;}
.dtc-checkout-subscribe-note{color:#6b3719;font-size:14px;margin:.25rem 0 0;}

/* Subscription discount pricing */
.subscription-price{font-weight:900;color:var(--espresso);font-size:20px}.subscription-price .regular-price{display:block;color:#7a4a25;font-size:13px;text-decoration:none;margin-top:4px}.dtc-subscription-discount-note{font-size:12px;color:#4b2411;margin-top:6px;font-weight:800}

/* Subscribe contact form */
.subscribe-form-wrap{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:28px;align-items:start;}
.subscription-summary-card,.dtc-subscribe-contact-form{background:#fffaf0;border:1px solid rgba(82,45,20,.18);border-radius:18px;padding:26px;box-shadow:0 12px 34px rgba(35,23,12,.08);}
.subscription-summary-card h2,.dtc-subscribe-contact-form h2{margin-top:0;}
.subscription-discount-note{font-weight:700;color:#6b3719;background:#f3dfb9;padding:12px 14px;border-radius:12px;}
.dtc-subscribe-contact-form label{display:block;margin:14px 0 6px;font-weight:700;color:#4a2b18;}
.dtc-subscribe-contact-form input,.dtc-subscribe-contact-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(82,45,20,.28);border-radius:10px;padding:12px;font:inherit;background:#fff;}
.dtc-form-note{font-size:14px;color:#72543b;margin-top:14px;}
@media(max-width:800px){.subscribe-form-wrap{grid-template-columns:1fr;}}

/* Package subscription request page */
.subscribe-package-hero .hero-content{max-width:760px;}
.package-subscribe-section{background:linear-gradient(180deg,#fffaf0 0%,#f5ead8 100%);}
.package-subscribe-wrap{align-items:stretch;}
.package-summary-card{position:relative;overflow:hidden;border:1px solid rgba(131,84,38,.28);background:linear-gradient(180deg,#fff7e8 0%,#fffaf0 100%);}
.discount-badge{display:inline-block;background:#4a2b18;color:#fffaf0;border-radius:999px;padding:9px 14px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;margin-bottom:16px;}
.package-subtitle{color:#765235;margin-top:-8px;}
.package-price-box{border:1px solid rgba(82,45,20,.18);background:#fff;border-radius:16px;padding:18px;margin:20px 0;box-shadow:0 10px 24px rgba(35,23,12,.06);}
.package-price-box .package-price-label{display:block;color:#7b5634;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;}
.package-price-box strong{display:block;font-size:2.2rem;line-height:1.1;color:#3d2415;margin:5px 0;}
.package-price-box small{color:#765235;}
.package-details-list{background:rgba(255,255,255,.58);border-radius:14px;padding:14px 16px;margin:18px 0;}
.package-details-list p{margin:8px 0;}
.member-benefits{margin-top:18px;}
.member-benefits h3{margin-bottom:8px;}
.member-benefits ul{margin:0;padding-left:20px;}
.member-benefits li{margin:8px 0;}
.package-contact-form{background:#fff;border:1px solid rgba(82,45,20,.18);}
.form-intro{color:#765235;margin-top:-6px;}
.selected-package-inline{background:#fff7e8;border:1px solid rgba(82,45,20,.18);border-radius:12px;padding:12px 14px;margin:18px 0;color:#4a2b18;}

/* v2.5 Coffee Club MailPoet signup flow */
.coffee-club-hero .hero-content{max-width:820px;}
.coffee-club-section{background:linear-gradient(180deg,#fffaf0 0%,#f3e4cf 100%);}
.coffee-club-summary .package-price-box strong{font-size:2rem;}
.mailpoet-club-form{margin:18px 0;padding:18px;border:1px solid rgba(82,45,20,.16);border-radius:16px;background:#fffaf0;}
.mailpoet-club-form .mailpoet_form{margin:0!important;}
.mailpoet-club-form input[type="email"],.mailpoet-club-form input[type="text"]{width:100%;box-sizing:border-box;border:1px solid rgba(82,45,20,.28);border-radius:10px;padding:12px;font:inherit;background:#fff;}
.mailpoet-club-form input[type="submit"],.mailpoet-club-form button{background:var(--sunset);color:var(--deep);border:2px solid var(--sunset);border-radius:3px;padding:12px 18px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;}

/* Checkout-first Coffee Club discount flow */
.dtc-checkout-email-discount,.dtc-checkout-coffee-club-optin{background:#fff8df;border:1px solid rgba(120,52,7,.18);border-left:6px solid var(--sunset);border-radius:18px;padding:22px 24px;margin:0 0 24px;box-shadow:0 12px 30px rgba(59,22,7,.08)}
.dtc-checkout-email-discount h3{margin:0 0 8px;font-family:Georgia,serif;color:var(--espresso);font-size:28px}.dtc-checkout-email-discount p,.dtc-checkout-coffee-club-optin p{margin:8px 0;color:#4b2411}.dtc-checkout-email-discount code{background:var(--deep);color:var(--cream);padding:4px 8px;border-radius:6px;font-weight:900;letter-spacing:.05em}.dtc-checkout-coffee-club-optin label{font-weight:800;color:var(--espresso)}


/* v3.5 Coffee Club email signup + editable cart page */
.dtc-club-native-form{margin-top:18px;display:grid;gap:12px;}
.dtc-club-native-form input{width:100%;padding:13px 14px;border:1px solid #d9c7ad;border-radius:4px;background:#fff;color:#2b170e;}
.dtc-success-message,.dtc-error-message{padding:14px 16px;border-radius:6px;margin:16px 0;font-weight:800;}
.dtc-success-message{background:#edf8ef;border:1px solid #b9e1bf;color:#174d22;}
.dtc-error-message{background:#fff1ed;border:1px solid #e3b4a6;color:#7a250c;}
.optional-mailpoet{margin-top:22px;padding-top:18px;border-top:1px solid rgba(74,45,30,.18);}
.dtc-cart-page .woocommerce-cart-form .product-remove a{font-size:22px;text-decoration:none;}
.dtc-cart-page .woocommerce-cart-form input.qty{min-width:76px;padding:8px;text-align:center;}
.dtc-cart-page .woocommerce-cart-form .actions .button{margin-top:8px;}
