/* Path downloadable-product page — v0.1
   Uses the QuikCard page as the COMLUK downloadable-product baseline while preserving Path's own identity. */

.path-product-page {
  --path-gold: #f6c43f;
  --path-gold-deep: #b98b16;
  --path-gold-soft: #fff7da;
  --path-ink: #101112;
  --path-night: #0b0c0d;
  --path-night-2: #171511;
  --path-paper: #fbfbfa;
  --path-paper-2: #f4f3ef;
  --path-line: #deddd8;
  --path-muted: #6e6d68;
  background: var(--path-paper);
}

/* Header */
.path-header.site-header {
  height:78px; padding:0 clamp(20px,3.4vw,54px); color:var(--ink); background:rgba(255,255,255,.96);
  border-bottom:1px solid #e2e1dc; backdrop-filter:blur(14px);
}
.path-brand-lockup { min-width:0; display:flex; align-items:center; gap:17px; }
.path-corporate-brand,.path-product-brand { display:inline-flex; align-items:center; }
.path-corporate-brand img { width:136px; }
.path-brand-divider { width:1px; height:34px; background:#d8d7d2; }
.path-product-brand { gap:10px; color:#181818; }
.path-product-brand img { width:34px; height:34px; object-fit:cover; border-radius:8px; }
.path-product-brand strong { font-size:1rem; letter-spacing:-.025em; }
.path-desktop-nav { gap:2px; }
.path-nav-link { min-height:38px; padding:0 10px; display:inline-flex; align-items:center; justify-content:center; line-height:1; border:0; border-bottom:2px solid transparent; background:transparent; color:#242424; font-size:.82rem; font-weight:650; }
.path-nav-link:hover,.path-nav-link:focus-visible { color:#927017; outline:none; }
.path-nav-link.is-current { color:#927017; border-bottom-color:var(--path-gold); }
.path-download-button { min-height:40px; margin-left:8px; padding:0 18px; display:inline-flex; align-items:center; border:1px solid var(--path-gold); border-radius:4px; background:var(--path-gold); color:#121212; font-size:.82rem; font-weight:800; }
.path-download-button:hover,.path-download-button:focus-visible { background:#ffd45d; border-color:#ffd45d; outline:none; }

/* Shared type */
.path-kicker { display:block; color:#967117; font-size:.75rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.path-kicker-light { color:rgba(255,255,255,.62); }
.path-section-shell { width:min(1240px,100%); margin:0 auto; }
.path-section-heading { text-align:center; }
.path-section-heading h2,.path-copy-shell h2,.path-final-cta h2,.path-return-copy h2 { margin:10px 0 0; letter-spacing:-.045em; line-height:1.04; }
.path-section-heading h2 { font-size:clamp(2rem,3.6vw,3.35rem); }
.path-button { min-height:49px; padding:0 21px; display:inline-flex; align-items:center; justify-content:center; gap:13px; border-radius:4px; font-weight:750; transition:transform .16s ease,background .16s ease,border-color .16s ease; }
.path-button:hover,.path-button:focus-visible { transform:translateY(-1px); outline:none; }
.path-button-icon { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }

/* Hero */
.path-hero { position:relative; padding:116px 24px 68px; color:#fff; overflow:hidden; background:radial-gradient(circle at 78% 38%,rgba(246,196,63,.15),transparent 27%),linear-gradient(118deg,#070809 0%,#11100d 59%,#17130b 100%); }
.path-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.55; background:linear-gradient(147deg,transparent 0 56%,rgba(246,196,63,.05) 56% 56.3%,transparent 56.3%),radial-gradient(circle at 91% 5%,transparent 0 118px,rgba(246,196,63,.11) 119px 120px,transparent 121px 180px,rgba(255,255,255,.035) 181px 182px,transparent 183px); }
.path-hero::after { content:""; position:absolute; left:-120px; right:-90px; bottom:52px; height:110px; border-top:1px solid rgba(246,196,63,.35); border-radius:50%; transform:rotate(4deg); box-shadow:0 -16px 55px rgba(246,196,63,.08); }
.path-hero-shell { position:relative; z-index:2; width:min(1260px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,.9fr) minmax(470px,1.1fr); gap:clamp(30px,4vw,64px); align-items:center; }
.path-hero-copy { max-width:610px; position:relative; z-index:5; }
.path-hero-brand { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.path-hero-brand img { width:54px; height:54px; border-radius:12px; box-shadow:0 16px 30px rgba(0,0,0,.38); }
.path-hero-brand span { font-family:Georgia,'Times New Roman',serif; font-size:1.65rem; font-weight:700; }
.path-hero h1 { margin:10px 0 0; font-size:clamp(3.1rem,5.3vw,5.9rem); line-height:.98; letter-spacing:-.058em; font-weight:700; }
.path-hero h1 span { color:#ffe08a; }
.path-hero-copy > p { max-width:580px; margin:21px 0 0; color:rgba(255,255,255,.76); font-size:clamp(1rem,1.35vw,1.18rem); line-height:1.72; }
.path-hero-actions { display:flex; gap:13px; margin-top:27px; }
.path-hero-actions-mobile { display:none; }
.path-button-primary { min-width:180px; background:var(--path-gold); border:1px solid var(--path-gold); color:#111; }
.path-button-primary:hover { background:#ffd25a; border-color:#ffd25a; }
.path-button-secondary { min-width:166px; border:1px solid rgba(255,255,255,.43); color:#fff; background:rgba(255,255,255,.02); }
.path-button-secondary:hover { border-color:#fff; background:rgba(255,255,255,.07); }
.path-hero-visual { position:relative; min-height:520px; display:grid; place-items:center; }
.path-hero-glow { position:absolute; width:450px; height:450px; border-radius:50%; background:radial-gradient(circle,rgba(246,196,63,.22),rgba(246,196,63,.055) 45%,transparent 70%); filter:blur(5px); }
.path-phone { position:absolute; z-index:3; overflow:hidden; padding:6px; border-radius:38px; background:linear-gradient(145deg,#83817a 0%,#25231f 14%,#070707 58%,#77736a 100%); box-shadow:0 34px 70px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.18) inset; }
.path-phone::after { content:""; position:absolute; inset:6px; border-radius:31px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.07); pointer-events:none; }
.path-phone img { width:100%; height:100%; object-fit:cover; border-radius:31px; }
.path-phone-main { width:248px; aspect-ratio:.563; left:20%; top:4%; transform:rotate(-3deg); }
.path-phone-timeline { width:224px; aspect-ratio:.563; right:5%; bottom:0; transform:rotate(4deg); z-index:4; }
.path-floating-chip { position:absolute; z-index:7; padding:9px 12px; border-radius:999px; border:1px solid rgba(246,196,63,.24); background:rgba(14,13,10,.78); backdrop-filter:blur(8px); color:#f7d66f; font-size:.62rem; font-weight:800; letter-spacing:.12em; }
.path-floating-chip-top { top:11%; right:10%; }
.path-floating-chip-bottom { left:5%; bottom:7%; }

/* Intro */
.path-intro { padding:clamp(58px,7vw,94px) 24px; background:#fff; border-bottom:1px solid var(--path-line); }
.path-copy-shell { width:min(880px,100%); margin:0 auto; text-align:center; }
.path-copy-shell h2 { font-size:clamp(2rem,4vw,3.65rem); }
.path-copy-shell p { max-width:820px; margin:20px auto 0; color:var(--path-muted); font-size:clamp(.98rem,1.35vw,1.08rem); line-height:1.8; }

/* Benefits */
.path-why { padding:clamp(58px,7.5vw,100px) 24px; background:var(--path-paper-2); }
.path-benefit-flow { margin-top:55px; display:grid; grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr) 54px minmax(0,1fr) 54px minmax(0,1fr); gap:16px; align-items:start; }
.path-benefit { text-align:center; }
.path-benefit-icon { width:72px; height:72px; margin:0 auto 20px; display:grid; place-items:center; border:1px solid #ddd8ca; border-radius:50%; background:#fff; color:#9a7416; }
.path-benefit-icon svg { width:31px; height:31px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.path-benefit h3 { margin:0; font-size:1rem; letter-spacing:-.015em; }
.path-benefit p { max-width:245px; margin:9px auto 0; color:var(--path-muted); font-size:.84rem; line-height:1.65; }
.path-flow-line { height:1px; margin-top:36px; background:linear-gradient(90deg,#d8d3c4 0 80%,transparent 80%); background-size:8px 1px; position:relative; }
.path-flow-line::after { content:""; position:absolute; right:-1px; top:-3px; border-left:6px solid #c4bda9; border-top:3.5px solid transparent; border-bottom:3.5px solid transparent; }

/* Product story */
.path-story { padding:clamp(60px,7.5vw,104px) 24px; background:#fff; border-top:1px solid var(--path-line); border-bottom:1px solid var(--path-line); scroll-margin-top:96px; }
.path-story-heading { max-width:900px; margin:0 auto; }
.path-story-heading > p,.path-schedule-heading > p,.path-features-heading > p { max-width:730px; margin:14px auto 0; color:var(--path-muted); font-size:.96rem; line-height:1.72; }
.path-demo-row { width:min(1110px,100%); margin:72px auto 0; display:grid; grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr); gap:clamp(36px,6vw,80px); align-items:center; }
.path-demo-row-reverse { grid-template-columns:minmax(0,1.18fr) minmax(290px,.82fr); }
.path-demo-row-reverse .path-demo-copy { grid-column:2; grid-row:1; }
.path-demo-row-reverse .path-demo-media { grid-column:1; grid-row:1; }
.path-demo-number { display:inline-grid; place-items:center; width:38px; height:38px; margin-bottom:18px; border-radius:50%; background:var(--path-gold-soft); color:#87650f; font-weight:800; font-size:.77rem; }
.path-demo-copy h3 { margin:10px 0 0; color:#181817; font-size:clamp(1.8rem,3.1vw,3rem); line-height:1.08; letter-spacing:-.045em; }
.path-demo-copy p { margin:18px 0 0; color:var(--path-muted); font-size:.95rem; line-height:1.75; }
.path-demo-media { min-width:0; position:relative; min-height:520px; display:flex; align-items:center; justify-content:center; }
.path-demo-media::before { content:""; position:absolute; inset:5% 5%; border-radius:28px; background:linear-gradient(135deg,#f3f1e9,#e9e5d8); }
.path-screen-card { position:relative; z-index:2; overflow:hidden; border:1px solid #ddd9cc; border-radius:20px; background:#080909; box-shadow:0 26px 48px rgba(22,20,15,.13); }
.path-screen-card img { width:100%; height:100%; object-fit:cover; }
.path-screen-card figcaption { position:absolute; left:12px; bottom:12px; padding:7px 10px; border-radius:999px; background:rgba(10,10,9,.82); color:#f9d267; font-size:.65rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; backdrop-filter:blur(8px); }
.path-screen-timeline { width:280px; aspect-ratio:.563; transform:rotate(1.4deg); }
.path-screen-step { width:300px; aspect-ratio:.563; transform:rotate(-1.7deg); }
.path-screen-branch { width:285px; aspect-ratio:.563; transform:rotate(1.8deg); }

/* Schedule */
.path-schedule { padding:clamp(60px,8vw,110px) 24px; background:linear-gradient(155deg,#0b0c0d,#12110e); color:#fff; scroll-margin-top:96px; overflow:hidden; }
.path-schedule .path-kicker { color:#f0c345; }
.path-schedule-heading { max-width:900px; margin:0 auto; }
.path-schedule-heading h2 { color:#fff; }
.path-schedule-heading > p { color:rgba(255,255,255,.67); }
.path-schedule-showcase { position:relative; width:min(1120px,100%); min-height:650px; margin:58px auto 0; display:flex; align-items:center; justify-content:center; gap:24px; }
.path-schedule-showcase::before { content:""; position:absolute; width:650px; height:450px; border-radius:50%; background:radial-gradient(circle,rgba(246,196,63,.14),transparent 68%); }
.path-schedule .path-screen-card { border-color:rgba(246,196,63,.2); box-shadow:0 30px 60px rgba(0,0,0,.42); }
.path-screen-month,.path-screen-week { width:244px; aspect-ratio:.563; }
.path-screen-month { transform:rotate(-4deg) translateY(18px); }
.path-screen-week { transform:rotate(3deg) translateY(-18px); }
.path-screen-scheduled-step { width:268px; aspect-ratio:.563; transform:rotate(-1deg) translateY(28px); }

/* Return / local */
.path-return { padding:clamp(64px,8vw,110px) 24px; background:#fff; border-bottom:1px solid var(--path-line); }
.path-return-grid { display:grid; grid-template-columns:minmax(290px,.82fr) minmax(0,1.18fr); gap:clamp(42px,7vw,90px); align-items:center; }
.path-return-copy h2 { font-size:clamp(2rem,4vw,3.6rem); }
.path-return-copy > p { margin:20px 0 0; color:var(--path-muted); line-height:1.8; }
.path-local-note { margin-top:26px; padding:20px 22px; border-left:4px solid var(--path-gold); background:#faf7ed; }
.path-local-note strong { display:block; margin-bottom:7px; color:#1a1916; }
.path-local-note span { color:#706c61; font-size:.88rem; line-height:1.65; }
.path-return-media { position:relative; min-height:560px; display:flex; justify-content:center; align-items:center; }
.path-return-media::before { content:""; position:absolute; inset:8% 3%; border-radius:28px; background:linear-gradient(135deg,#f5f3ed,#ebe7da); }
.path-screen-home { width:245px; aspect-ratio:.563; transform:translateX(-70px) rotate(-2deg); }
.path-screen-drawer { position:absolute; width:242px; aspect-ratio:.563; right:7%; bottom:0; transform:rotate(3deg); }

/* Features */
.path-features { padding:clamp(56px,7vw,96px) 24px; background:var(--path-paper-2); border-bottom:1px solid var(--path-line); scroll-margin-top:96px; }
.path-features-heading { max-width:880px; margin:0 auto; }
.path-feature-grid { width:min(1080px,100%); margin:40px auto 0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.path-feature-card { min-height:220px; padding:24px 22px; border:1px solid var(--path-line); border-radius:8px; background:#fff; }
.path-feature-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; color:#8b6812; background:var(--path-gold-soft); }
.path-feature-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.path-feature-card h3 { margin:18px 0 8px; color:#1a1917; font-size:1.05rem; letter-spacing:-.025em; }
.path-feature-card p { margin:0; color:var(--path-muted); font-size:.84rem; line-height:1.62; }

/* CTA */
.path-final-cta { position:relative; overflow:hidden; padding:clamp(48px,6vw,78px) 24px; color:#fff; background:linear-gradient(110deg,#6f5310,#b88a16 48%,#e1ad2b); }
.path-final-cta::before,.path-final-cta::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.15); }
.path-final-cta::before { width:320px; height:320px; left:-160px; bottom:-225px; box-shadow:0 0 0 48px rgba(255,255,255,.025); }
.path-final-cta::after { width:280px; height:280px; right:-145px; top:-190px; box-shadow:0 0 0 54px rgba(255,255,255,.025); }
.path-final-cta-inner { position:relative; z-index:2; width:min(1180px,100%); margin:0 auto; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:50px; align-items:center; }
.path-final-cta h2 { font-size:clamp(2rem,4vw,3.5rem); }
.path-final-cta p { max-width:700px; margin:14px 0 0; color:rgba(255,255,255,.82); line-height:1.7; }
.path-final-actions { display:flex; gap:12px; }
.path-button-light { min-width:160px; background:#fff; border:1px solid #fff; color:#6f5310; }
.path-button-light:hover { background:#fff8e8; border-color:#fff8e8; }
.path-button-outline-light { min-width:125px; border:1px solid rgba(255,255,255,.74); color:#fff; }
.path-button-outline-light:hover { background:rgba(255,255,255,.1); border-color:#fff; }

/* Footer */
.path-legal-footer.site-footer { padding-top:0; background:var(--paper-2); }
.path-legal-footer .footer-inner { grid-template-columns:minmax(0,1fr) auto; gap:24px; }
.path-legal-footer .footer-links { justify-content:flex-start; }
.path-legal-footer .copyright { white-space:nowrap; }

/* Responsive */
@media (max-width:1180px) {
  .path-header.site-header { padding-inline:22px; }
  .path-corporate-brand img { width:124px; }
  .path-brand-lockup { gap:12px; }
  .path-nav-link { padding-inline:7px; }
  .path-hero-shell { grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr); }
  .path-phone-main { width:230px; left:16%; }
  .path-phone-timeline { width:210px; }
}
@media (max-width:960px) {
  .path-header.site-header { height:70px; }
  .path-header .path-desktop-nav { display:none; }
  .path-header .menu-toggle { display:flex; }
  .path-header .path-mobile-nav { top:70px; }
  .path-hero { padding-top:96px; }
  .path-hero-shell { grid-template-columns:1fr; }
  .path-hero-copy { max-width:760px; text-align:center; margin:0 auto; }
  .path-hero-brand,.path-hero-actions-desktop { justify-content:center; }
  .path-hero-visual { min-height:560px; width:min(620px,100%); margin:10px auto 0; }
  .path-hero-actions-mobile { display:flex; justify-content:center; margin:4px auto 0; }
  .path-hero-actions-desktop { display:none; }
  .path-benefit-flow { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 22px; }
  .path-flow-line { display:none; }
  .path-demo-row,.path-demo-row-reverse,.path-return-grid { grid-template-columns:1fr; gap:30px; }
  .path-demo-row-reverse .path-demo-copy,.path-demo-row-reverse .path-demo-media { grid-column:auto; grid-row:auto; }
  .path-demo-row-reverse .path-demo-copy { order:1; }
  .path-demo-row-reverse .path-demo-media { order:2; }
  .path-demo-copy { max-width:720px; margin:0 auto; text-align:center; }
  .path-schedule-showcase { min-height:620px; gap:14px; }
  .path-screen-scheduled-step { display:none; }
  .path-return-copy { max-width:780px; text-align:center; margin:0 auto; }
  .path-local-note { text-align:left; }
  .path-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .path-final-cta-inner { grid-template-columns:1fr; text-align:center; gap:26px; }
  .path-final-actions { justify-content:center; }
}
@media (max-width:680px) {
  .path-header.site-header { padding-inline:16px; }
  .path-corporate-brand img { width:110px; }
  .path-brand-divider { height:28px; }
  .path-product-brand strong { display:none; }
  .path-product-brand img { width:31px; height:31px; }
  .path-hero { padding:90px 18px 48px; }
  .path-hero h1 { font-size:clamp(2.75rem,14vw,4.25rem); }
  .path-hero-visual { min-height:470px; }
  .path-phone-main { width:194px; left:8%; top:6%; }
  .path-phone-timeline { width:178px; right:3%; }
  .path-floating-chip-top { right:4%; top:4%; }
  .path-floating-chip-bottom { left:4%; bottom:4%; font-size:.55rem; }
  .path-hero-actions-mobile { width:100%; flex-direction:column; }
  .path-button { width:100%; }
  .path-intro,.path-why,.path-story,.path-schedule,.path-return,.path-features { padding-inline:18px; }
  .path-benefit-flow { grid-template-columns:1fr; }
  .path-demo-row { margin-top:52px; }
  .path-demo-media { min-height:450px; }
  .path-screen-timeline,.path-screen-step,.path-screen-branch { width:min(260px,78vw); }
  .path-schedule-showcase { min-height:500px; gap:10px; }
  .path-screen-month,.path-screen-week { width:min(190px,45vw); }
  .path-screen-month { transform:translateX(18px) rotate(-4deg); }
  .path-screen-week { transform:translateX(-18px) rotate(3deg); }
  .path-return-media { min-height:480px; }
  .path-screen-home { width:min(210px,62vw); transform:translateX(-52px) rotate(-2deg); }
  .path-screen-drawer { width:min(205px,60vw); right:0; }
  .path-feature-grid { grid-template-columns:1fr; }
  .path-final-actions { flex-direction:column; }
  .path-legal-footer .footer-inner { grid-template-columns:1fr; }
  .path-legal-footer .copyright { white-space:normal; }
}
