/*
Theme Name: Cash Saving Expert
Theme URI: https://cashsavingexpert.co.uk
Description: Money fixes, sorted by the time you've got. Custom child theme with the Fix Rating system.
Author: Cash Saving Expert
Template: generatepress
Version: 2.0.0
Text Domain: cse-child
*/

/* =========================================================================
   1. Fonts (self-hosted, SIL OFL - see fonts/LICENSE.txt)
   ========================================================================= */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:500 800;font-display:swap;
  src:url(fonts/fraunces-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:500 800;font-display:swap;
  src:url(fonts/fraunces-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;
  src:url(fonts/inter-latin.woff2) format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 700;font-display:swap;
  src:url(fonts/inter-latin-ext.woff2) format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* =========================================================================
   2. Tokens
   GeneratePress drives its own rules from --contrast/--base/--accent, so
   redefining those here re-skins the parent theme wholesale.
   ========================================================================= */
:root{
  --paper:#FAF6EE; --paper-2:#F2EBDD; --card:#FFFFFF;
  --ink:#14251C; --body:#3A4941; --muted:#5F6B63; --line:#E7DFCF; --line-2:#D6CBB4;
  --green:#0F5C3A; --green-deep:#0B4029; --green-soft:#E4EFE6;
  --gold:#E9A21A; --gold-deep:#8A5A00; --gold-soft:#FCF1D6; --gold-line:#EDD59C;

  /* Time buckets. */
  --t-quick:#8A5A00;     --t-quick-soft:#FBEBC4;
  --t-hour:#0B4029;      --t-hour-soft:#DCEDE1;
  --t-afternoon:#9A3412; --t-afternoon-soft:#FBE3D5;
  --t-habit:#1E4E7A;     --t-habit-soft:#DDE8F4;

  --radius:16px; --radius-sm:10px;
  --shadow:0 1px 2px rgba(20,37,28,.05),0 6px 18px rgba(20,37,28,.06);
  --shadow-lg:0 2px 6px rgba(20,37,28,.06),0 20px 44px rgba(20,37,28,.13);
  --font-display:"Fraunces",Georgia,"Times New Roman",serif;
  --font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  /* Re-skin GeneratePress. */
  --contrast:var(--ink); --contrast-2:var(--muted); --contrast-3:var(--line-2);
  --base:var(--paper-2); --base-2:var(--paper); --base-3:#FFFFFF; --accent:var(--green);

  /* Default category tint (overridden per category below). */
  --cat:var(--green); --cat-soft:var(--green-soft);
}

/* Category colours - each passes 4.5:1 on its soft tint and on white. */
.cse-cat--bills-utilities{--cat:#0F6B4A;--cat-soft:#DDF0E6}
.cse-cat--banking-savings{--cat:#1E5A8A;--cat-soft:#DEEAF5}
.cse-cat--shopping-deals{--cat:#A93F14;--cat-soft:#FAE6DC}
.cse-cat--food-groceries{--cat:#83550E;--cat-soft:#F7EBD4}
.cse-cat--travel{--cat:#3F3AA8;--cat-soft:#E5E4F7}
.cse-cat--household-family{--cat:#7A2E6E;--cat-soft:#F3E2EF}

.cse-time--quick,.cse-timepill--quick{--t:var(--t-quick);--t-soft:var(--t-quick-soft)}
.cse-time--hour,.cse-timepill--hour{--t:var(--t-hour);--t-soft:var(--t-hour-soft)}
.cse-time--afternoon,.cse-timepill--afternoon{--t:var(--t-afternoon);--t-soft:var(--t-afternoon-soft)}
.cse-time--habit,.cse-timepill--habit{--t:var(--t-habit);--t-soft:var(--t-habit-soft)}

/* =========================================================================
   3. Base
   ========================================================================= */
body{background:var(--paper);color:var(--body);font-family:var(--font-body);
  font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink);font-weight:700;
  line-height:1.18;letter-spacing:-.015em;font-optical-sizing:auto}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:2px}
a:hover,a:focus{color:var(--green-deep)}
::selection{background:var(--gold-soft);color:var(--ink)}
.cse-icon{flex:none;vertical-align:middle}

/* Keyboard focus: the parent theme strips outlines (WCAG 2.4.7). */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}
.main-navigation a:focus-visible,.cse-how a:focus-visible,.site-footer a:focus-visible,
.cse-topic:focus-visible{outline-color:#FFD88A}
.screen-reader-text:focus{background:#fff;color:var(--green-deep);padding:12px 20px;
  border-radius:0 0 10px 0;z-index:100000;outline:3px solid var(--gold);outline-offset:0}

/* =========================================================================
   4. Header, brand and navigation
   ========================================================================= */
.site-header{background:var(--paper);border-bottom:0}
.inside-header{padding-top:18px;padding-bottom:18px}
.main-title{margin:0;line-height:1}
.cse-brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none}
.cse-brand:hover .cse-brand__mark{transform:rotate(-8deg)}
.cse-brand__mark{flex:none;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.cse-brand__text{display:flex;flex-direction:column;gap:5px;text-align:left}
.cse-brand__name{font-family:var(--font-display);font-size:1.55rem;font-weight:800;
  letter-spacing:-.025em;color:var(--ink);line-height:1}
.cse-brand__name span{color:var(--green)}
.cse-brand__tag{font-family:var(--font-body);font-size:.8rem;font-weight:500;color:var(--muted);letter-spacing:.01em;text-wrap:balance}

.main-navigation{background:var(--green-deep);border-top:3px solid var(--gold)}
.main-navigation .main-nav ul li a{color:#EAF4EC;font-weight:600;font-size:.93rem;
  padding-left:16px;padding-right:16px;letter-spacing:.005em}
/* Match GeneratePress's selector weight so our hover/current colours win.
   [class*="current-menu-"] also catches the parent/ancestor classes WordPress
   adds when you are on a post inside that category. */
.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a,
.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a,
.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a{
  color:#fff;background:rgba(255,255,255,.08)}
.main-navigation .main-nav ul li[class*="current-menu-"] > a{
  color:#fff;background:var(--green);box-shadow:inset 0 -3px 0 var(--gold)}
.main-navigation ul ul{background:var(--green)}
.main-navigation .inside-navigation{padding-left:20px;padding-right:20px}

/* Mobile toggle: the parent colours it dark, near-invisible on our bar. */
.main-navigation .menu-toggle,.main-navigation .menu-bar-items,
.main-navigation .menu-toggle:hover,.main-navigation .menu-toggle:focus{
  color:#EAF4EC;background:transparent;font-weight:700;letter-spacing:.02em}
.main-navigation .menu-toggle:hover{background:rgba(255,255,255,.08)}
.main-navigation .menu-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}

@media (max-width:900px){
  .main-navigation .main-nav ul li a{padding-left:12px;padding-right:12px;font-size:.9rem}
}
@media (max-width:768px){
  .inside-header{padding-top:14px;padding-bottom:14px}
  .cse-brand__name{font-size:1.35rem}
  .cse-brand__tag{font-size:.74rem;line-height:1.3}
  .cse-brand__mark{width:40px;height:40px}
  /* The parent sets a 60px line-height for the desktop bar; stacked, that
     made each row 88px and the menu most of the screen. */
  .main-navigation.toggled .main-nav > ul > li > a{line-height:1.5;padding-top:13px;
    padding-bottom:13px;border-top:1px solid rgba(255,255,255,.10)}
  .main-navigation.toggled .main-nav > ul > li:first-child > a{border-top:0}
  .main-navigation.toggled .main-nav ul li[class*="current-menu-"] > a{box-shadow:inset 3px 0 0 var(--gold)}
}

/* =========================================================================
   5. Shared components
   ========================================================================= */
.cse-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0;
  font:700 .76rem/1 var(--font-body);letter-spacing:.09em;text-transform:uppercase;
  color:var(--green);background:var(--green-soft);padding:8px 13px 8px 11px;border-radius:999px}

.cse-btn{display:inline-flex;align-items:center;gap:9px;background:var(--green);color:#fff;
  font:700 .98rem/1 var(--font-body);padding:15px 22px;border-radius:12px;text-decoration:none;
  box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 6px 16px rgba(15,92,58,.25);
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.cse-btn:hover,.cse-btn:focus{background:var(--green-deep);color:#fff;transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(15,92,58,.3)}
.cse-btn--gold{background:var(--gold);color:#2A1E02;box-shadow:0 6px 16px rgba(233,162,26,.32)}
.cse-btn--gold:hover,.cse-btn--gold:focus{background:#D18F0C;color:#1F1601}
.cse-link-arrow{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.93rem;
  color:var(--green);text-decoration:none}
.cse-link-arrow:hover .cse-icon{transform:translateX(3px)}
.cse-link-arrow .cse-icon{transition:transform .15s ease}

/* Effort meter: three bars of rising height. */
.cse-meter{display:inline-flex;align-items:flex-end;gap:3px;height:13px}
.cse-meter__bar{width:5px;border-radius:2px;background:var(--line-2)}
.cse-meter__bar:nth-child(1){height:6px}
.cse-meter__bar:nth-child(2){height:9.5px}
.cse-meter__bar:nth-child(3){height:13px}
.cse-meter__bar.is-on{background:var(--green)}

/* £££ saving band. */
.cse-pounds{display:inline-flex;gap:1px;font-family:var(--font-display);font-weight:800;
  font-size:1.02rem;line-height:1;letter-spacing:.02em}
.cse-pounds span{color:var(--line-2)}
.cse-pounds .is-on{color:var(--gold-deep)}

.cse-eyebrow--time{background:var(--t-soft);color:var(--t)}
.cse-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;
  border:1px solid var(--line-2);background:#fff;color:var(--ink);font:600 .86rem/1.2 var(--font-body);
  text-decoration:none;transition:border-color .15s ease,background .15s ease}
.cse-chip:hover{border-color:var(--green);color:var(--green-deep)}
.cse-chip.is-current{background:var(--green);border-color:var(--green);color:#fff}
.cse-switcher{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}

/* =========================================================================
   6. Cards
   ========================================================================= */
.cse-grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr))}
.cse-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.cse-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--line-2)}
.cse-card__media{position:relative;display:block;aspect-ratio:1200/630;overflow:hidden;background:var(--cat-soft)}
.cse-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.cse-card:hover .cse-card__media img{transform:scale(1.045)}

.cse-timepill{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:6px;
  padding:6px 11px 6px 8px;border-radius:999px;background:rgba(255,255,255,.95);color:var(--ink);
  font:700 .78rem/1 var(--font-body);box-shadow:0 2px 10px rgba(20,37,28,.18);backdrop-filter:blur(4px)}
.cse-timepill .cse-icon{color:var(--t)}

.cse-card__body{padding:18px 20px 18px;display:flex;flex-direction:column;flex:1}
.cse-card__cat{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-bottom:10px;
  font:700 .72rem/1 var(--font-body);letter-spacing:.07em;text-transform:uppercase;color:var(--cat);
  text-decoration:none;background:var(--cat-soft);padding:6px 10px;border-radius:999px}
.cse-card__cat:hover{color:var(--cat);filter:brightness(.96)}
.cse-card__title{font-size:1.2rem;line-height:1.26;margin:0 0 8px;font-weight:700}
.cse-card__title a{color:var(--ink);text-decoration:none}
.cse-card__title a:hover{color:var(--green)}
/* Whole card clickable via the title link, keeping one tab stop per card. */
.cse-card__title a::after{content:"";position:absolute;inset:0;z-index:1}
.cse-card__cat{position:relative;z-index:2}
.cse-card__excerpt{color:var(--body);font-size:.93rem;line-height:1.6;margin:0 0 14px;flex:1}
.cse-card__foot{margin-top:auto;padding-top:12px;border-top:1px dashed var(--line-2)}
.cse-badges{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cse-badge{display:inline-flex;align-items:center;gap:8px;font:600 .8rem/1 var(--font-body);color:var(--muted)}

.cse-grid--compact{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:16px}
.cse-grid--compact .cse-card__title{font-size:1.02rem}
.cse-grid--compact .cse-card__excerpt{display:none}
.cse-grid--compact .cse-card__body{padding:15px 16px 15px}

/* =========================================================================
   7. Front page
   ========================================================================= */
/* The front page writes full-bleed sections straight into #content, which
   GeneratePress lays out with flexbox for content+sidebar; unwrap it. Header
   and footer sit outside #page with their own containers, so this only
   affects front page content. */
.home #page{max-width:100%;width:100%;margin-left:0;margin-right:0}
.home #content{display:block;padding:0}

.cse-wrap{max-width:1180px;margin:0 auto;padding:0 22px}
.cse-section{padding:72px 0}
.cse-section--tint{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cse-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  flex-wrap:wrap;margin-bottom:30px}
.cse-section__head h2{font-size:clamp(1.75rem,3.2vw,2.35rem);margin:12px 0 6px;letter-spacing:-.025em}
.cse-section__head p{margin:0;color:var(--muted);max-width:40em}

/* Hero */
.cse-hero{padding:56px 0 72px;position:relative;overflow:hidden}
.cse-hero::before{content:"";position:absolute;right:-180px;top:-160px;width:560px;height:560px;
  border-radius:50%;background:radial-gradient(circle,rgba(233,162,26,.16),rgba(233,162,26,0) 68%);pointer-events:none}
.cse-hero__inner{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:56px;align-items:center;position:relative}
.cse-hero h1{font-size:clamp(2.35rem,5.2vw,3.9rem);line-height:1.03;letter-spacing:-.035em;margin:20px 0 20px;font-weight:800}
.cse-hero h1 em{font-style:normal;color:var(--green);
  background:linear-gradient(transparent 64%,var(--gold-soft) 64%,var(--gold-soft) 93%,transparent 93%)}
.cse-hero__lead{font-size:1.14rem;line-height:1.65;color:var(--body);max-width:33em;margin:0}

.cse-timepicker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:30px 0 0;padding:0;list-style:none}
.cse-time{display:flex;align-items:center;gap:14px;padding:15px 16px;background:#fff;border:1px solid var(--line);
  border-radius:14px;text-decoration:none;box-shadow:var(--shadow);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.cse-time:hover{transform:translateY(-3px);border-color:var(--t);box-shadow:var(--shadow-lg)}
.cse-time__icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;flex:none;
  background:var(--t-soft);color:var(--t)}
.cse-time__q{display:block;font:700 1.06rem/1.2 var(--font-display);color:var(--ink)}
.cse-time__n{display:block;font-size:.84rem;color:var(--muted);margin-top:3px}

.cse-hero__art{position:relative;min-height:470px}
.cse-photo{position:absolute;margin:0;border-radius:18px;overflow:hidden;background:var(--paper-2);
  border:7px solid #fff;box-shadow:var(--shadow-lg)}
.cse-photo img{width:100%;height:100%;object-fit:cover;display:block}
.cse-photo--a{width:74%;aspect-ratio:4/3;top:0;right:0;transform:rotate(2.2deg)}
.cse-photo--b{width:56%;aspect-ratio:4/3;bottom:6px;left:0;transform:rotate(-3.4deg)}
.cse-hero__ticket{position:absolute;left:0;top:44px;width:min(236px,58%);z-index:2;
  background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:14px;padding:14px 16px;
  box-shadow:var(--shadow-lg);transform:rotate(-2deg)}
.cse-hero__ticket-title{display:flex;align-items:center;gap:6px;font:700 .7rem/1 var(--font-body);
  letter-spacing:.1em;text-transform:uppercase;color:var(--gold-deep);padding-bottom:10px;margin-bottom:10px;
  border-bottom:2px dashed var(--gold-line)}
.cse-hero__ticket-row{display:flex;justify-content:space-between;align-items:center;font-size:.84rem;
  color:var(--muted);padding:3px 0}
.cse-hero__ticket-row strong{color:var(--ink);display:inline-flex;align-items:center;gap:6px;font-size:.86rem}

/* How it works */
.cse-how{background:var(--green-deep);color:#D5E6DA;padding:62px 0;position:relative;overflow:hidden}
.cse-how::after{content:"";position:absolute;left:-120px;bottom:-200px;width:460px;height:460px;border-radius:50%;
  border:60px solid rgba(233,162,26,.07);pointer-events:none}
.cse-how .cse-eyebrow{background:rgba(233,162,26,.16);color:#F6CD73}
.cse-how h2{color:#fff}
.cse-how .cse-section__head p{color:#B9D2C1}
.cse-how__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative;z-index:1}
.cse-how__item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px}
.cse-how__icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;
  background:rgba(233,162,26,.16);color:#F6CD73;margin-bottom:14px}
.cse-how__item h3{color:#fff;font-size:1.12rem;margin:0 0 6px}
.cse-how__item p{margin:0;font-size:.92rem;line-height:1.55;color:#B9D2C1}
.cse-how__demo{margin-top:12px;display:flex;align-items:center;gap:8px;font-size:.82rem;color:#EAF4EC}
.cse-how__demo .cse-meter__bar{background:rgba(255,255,255,.2)}
.cse-how__demo .cse-meter__bar.is-on{background:#F6CD73}
.cse-how__demo .cse-pounds span{color:rgba(255,255,255,.22)}
.cse-how__demo .cse-pounds .is-on{color:#F6CD73}
.cse-how .cse-link-arrow{color:#F6CD73}

/* Topic tiles with photos */
.cse-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:18px}
.cse-topic{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;
  border-radius:var(--radius);overflow:hidden;text-decoration:none;color:#fff;background:var(--cat);
  box-shadow:var(--shadow);isolation:isolate;transition:transform .2s ease,box-shadow .2s ease}
.cse-topic:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);color:#fff}
.cse-topic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .6s ease}
.cse-topic:hover img{transform:scale(1.06)}
.cse-topic::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(10,20,15,.05) 0%,rgba(10,20,15,.35) 45%,rgba(10,20,15,.86) 100%)}
.cse-topic__body{padding:20px 20px 18px}
.cse-topic__icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;
  background:#fff;color:var(--cat);margin-bottom:12px;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.cse-topic__name{display:block;font:750 1.3rem/1.15 var(--font-display);letter-spacing:-.01em;color:#fff}
.cse-topic__desc{display:block;font-size:.88rem;line-height:1.45;color:rgba(255,255,255,.88);margin-top:5px}
.cse-topic__count{position:absolute;top:14px;right:14px;font:700 .75rem/1 var(--font-body);
  background:rgba(255,255,255,.94);color:var(--ink);padding:6px 10px;border-radius:999px}

/* Trust strip */
.cse-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cse-trust__item{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:20px}
.cse-trust__icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;flex:none;
  background:var(--green-soft);color:var(--green)}
.cse-trust__item h3{font-size:1.06rem;margin:2px 0 4px}
.cse-trust__item p{margin:0;font-size:.9rem;line-height:1.55;color:var(--muted)}

@media (max-width:980px){
  .cse-hero__inner{grid-template-columns:1fr;gap:40px}
  .cse-hero__art{min-height:380px;max-width:600px}
  .cse-how__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cse-trust{grid-template-columns:1fr}
}
@media (max-width:600px){
  .cse-section{padding:52px 0}
  .cse-hero{padding:34px 0 48px}
  .cse-timepicker{grid-template-columns:1fr}
  .cse-hero__art{min-height:0;aspect-ratio:auto}
  .cse-photo--a{position:relative;width:100%;transform:none}
  .cse-photo--b{display:none}
  .cse-hero__ticket{position:relative;left:auto;top:auto;margin:-46px 0 0 auto;width:78%;transform:rotate(1deg)}
  .cse-how__grid{grid-template-columns:1fr}
  .cse-section__head{align-items:flex-start}
}

/* =========================================================================
   8. Archives
   ========================================================================= */
.cse-archive-head{margin:0 0 28px}
.cse-archive-title{font-size:clamp(1.9rem,3.6vw,2.6rem);margin:0 0 8px;letter-spacing:-.03em}
.cse-archive-desc{font-size:1.05rem;color:var(--body);margin:0 0 10px;max-width:40em}
.cse-archive-count{margin:0;font:700 .78rem/1 var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cse-archive-empty{color:var(--muted)}
.cse-archive-head__icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:14px;margin-bottom:14px}

.cse-archive-head--banner{position:relative;display:flex;align-items:flex-end;min-height:250px;border-radius:18px;
  overflow:hidden;background:var(--cat);color:#fff;isolation:isolate;box-shadow:var(--shadow)}
.cse-archive-head__media{position:absolute;inset:0;z-index:-2}
.cse-archive-head__media img{width:100%;height:100%;object-fit:cover}
.cse-archive-head--banner::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(10,20,15,.1),rgba(10,20,15,.82))}
.cse-archive-head__body{padding:26px 28px}
.cse-archive-head--banner .cse-archive-head__icon{background:#fff;color:var(--cat)}
.cse-archive-head--banner .cse-archive-title{color:#fff}
.cse-archive-head--banner .cse-archive-desc{color:rgba(255,255,255,.92)}
.cse-archive-head--banner .cse-archive-count{color:#F6CD73}

.cse-archive-head--time{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;box-shadow:var(--shadow)}
.cse-archive-head--time .cse-archive-head__icon{background:var(--t-soft);color:var(--t)}
.cse-archive-head--time .cse-eyebrow{background:var(--t-soft);color:var(--t);margin-bottom:6px}

/* Pagination */
.cse-pagination{margin-top:38px;padding-top:24px;border-top:1px solid var(--line)}
.cse-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center}
.cse-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;
  padding:0 14px;border-radius:11px;background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:700;
  font-size:.95rem;text-decoration:none;transition:background .15s ease,border-color .15s ease}
.cse-pagination .page-numbers:hover{background:var(--green-soft);border-color:var(--green);color:var(--green-deep)}
.cse-pagination .page-numbers.current{background:var(--green);border-color:var(--green);color:#fff}
.cse-pagination .page-numbers.dots{background:none;border:0;min-width:24px}

/* =========================================================================
   9. Single guide
   ========================================================================= */
.separate-containers .inside-article,.separate-containers .comments-area,
.separate-containers .page-header{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}
.post-image img,.page-header-image-single img{border-radius:14px}
.entry-title{font-size:clamp(1.9rem,3.8vw,2.7rem);letter-spacing:-.03em;line-height:1.1}
.entry-meta{color:var(--muted);font-size:.88rem}
.entry-content{font-size:1.06rem}
.entry-content > p:first-of-type{font-size:1.1rem}
.cse-lead{font-size:1.18rem!important;line-height:1.6;color:var(--ink)}

.entry-content h2{margin:2.1em 0 .7em;font-size:1.7rem;letter-spacing:-.02em;padding-bottom:.35em;
  border-bottom:2px solid var(--line)}
.entry-content h3{margin:1.8em 0 .5em;font-size:1.32rem;color:var(--green-deep)}
.entry-content ul,.entry-content ol{padding-left:1.3em}
.entry-content li{margin-bottom:.5em;padding-left:.2em}
.entry-content ul li::marker{color:var(--gold);font-size:1.15em}
.entry-content ol li::marker{color:var(--green);font-weight:800;font-family:var(--font-display)}
.entry-content a{text-decoration:underline}
.entry-content blockquote{border-left:4px solid var(--gold);background:var(--gold-soft);margin:1.6em 0;
  padding:16px 22px;border-radius:0 12px 12px 0;font-style:normal;color:var(--ink)}
.entry-content table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.95rem}
.entry-content th{background:var(--green-deep);color:#fff;text-align:left;padding:11px 14px}
.entry-content td{padding:11px 14px;border-bottom:1px solid var(--line)}
.entry-content tr:nth-child(even) td{background:var(--paper)}

/* The Fix Rating ticket */
.cse-ticket{position:relative;margin:22px 0 32px;background:var(--gold-soft);border:1px solid var(--gold-line);
  border-radius:16px;padding:16px 22px 18px}
.cse-ticket::before,.cse-ticket::after{content:"";position:absolute;top:36px;width:22px;height:22px;border-radius:50%;
  background:#fff;border:1px solid var(--gold-line)}
.cse-ticket::before{left:-12px;clip-path:inset(0 0 0 50%)}
.cse-ticket::after{right:-12px;clip-path:inset(0 50% 0 0)}
.cse-ticket__head{display:flex;align-items:center;gap:8px;color:var(--gold-deep);
  padding-bottom:12px;margin-bottom:14px;border-bottom:2px dashed var(--gold-line)}
.cse-ticket__title{margin:0;font:800 .8rem/1 var(--font-body);letter-spacing:.11em;text-transform:uppercase;color:var(--gold-deep)}
.cse-ticket__help{margin-left:auto;font-size:.82rem;font-weight:600;color:var(--gold-deep)}
.cse-ticket__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}
.cse-ticket__item{min-width:0}
.cse-ticket dt{display:flex;align-items:center;gap:6px;margin:0 0 7px;font:700 .72rem/1 var(--font-body);
  letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.cse-ticket dt .cse-icon{color:var(--gold-deep)}
.cse-ticket dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.95rem;line-height:1.3;color:var(--ink)}
.cse-ticket dd strong{font-weight:700}
.cse-ticket__note{flex-basis:100%;font-size:.8rem;color:var(--muted)}
.cse-ticket__more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-weight:700;font-size:.9rem;
  color:var(--green);text-decoration:none}
.cse-ticket__more:hover .cse-icon{transform:translateX(3px)}
.cse-ticket__more .cse-icon{transition:transform .15s ease}

@media (max-width:760px){
  .cse-ticket__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cse-ticket{padding:14px 18px 16px}
}

/* Key points box (in post content) */
.cse-keypoints{background:var(--green-soft);border:1px solid #CFE3D5;border-radius:14px;padding:18px 22px;margin:0 0 30px}
.cse-keypoints strong{display:flex;align-items:center;gap:8px;color:var(--green-deep);margin-bottom:10px;
  font-size:.78rem;letter-spacing:.09em;text-transform:uppercase}
.cse-keypoints strong::before{content:"";width:18px;height:18px;background:currentColor;flex:none;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M9.5 6.5h10M9.5 12h10M9.5 17.5h10M4.2 6.5h.6M4.2 12h.6M4.2 17.5h.6'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M9.5 6.5h10M9.5 12h10M9.5 17.5h10M4.2 6.5h.6M4.2 12h.6M4.2 17.5h.6'/%3E%3C/svg%3E") center/contain no-repeat}
.cse-keypoints ul{list-style:none;margin:0;padding:0}
.cse-keypoints li{position:relative;padding-left:28px;margin-bottom:.45em}
.cse-keypoints li::before{content:"";position:absolute;left:0;top:.28em;width:18px;height:18px;background:var(--green);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}

.cse-disclosure{background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:10px;
  padding:12px 16px;font-size:.87rem;color:#5E4203;margin:0 0 26px}

/* Related fixes */
.cse-related{margin:46px 0 0;padding-top:30px;border-top:1px solid var(--line)}
.cse-related__title{display:flex;align-items:center;gap:9px;font-size:1.45rem;margin:0 0 20px}
.cse-related__title .cse-icon{color:var(--gold)}

/* Post navigation and category links under the article */
.post-navigation,.cat-links{font-size:.9rem}

/* =========================================================================
   10. Sidebar
   ========================================================================= */
.sidebar .widget{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}
.sidebar .widget-title{font-size:1.1rem;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--line)}
.sidebar .widget ul li{margin-bottom:8px;line-height:1.45}
.sidebar .widget a{text-decoration:none}
.sidebar .widget a:hover{text-decoration:underline}
.search-form .search-field{border-radius:10px 0 0 10px;border:1px solid var(--line-2);background:var(--paper)}
.search-form .search-submit{border-radius:0 10px 10px 0;background:var(--green)}
.search-form .search-submit:hover{background:var(--green-deep)}

/* =========================================================================
   11. Footer
   ========================================================================= */
.site-footer,.footer-widgets{background:var(--green-deep);color:#B9D2C1}
.footer-widgets{padding-top:48px;padding-bottom:18px;border-top:3px solid var(--gold)}
.footer-widgets .widget-title{color:#fff;font-size:1.08rem}
.site-footer a{color:#E4F0E7;text-decoration:none}
.site-footer a:hover{color:#F6CD73;text-decoration:underline}
.site-info{background:#08301E;color:#9DB9A6;font-size:.86rem;padding:20px 0;border-top:0}
.cse-credit{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.cse-credit .cse-brand__mark{width:22px;height:22px}

/* =========================================================================
   12. Cookie banner (CookieYes) - on-brand, with Reject as prominent as Accept
   ========================================================================= */
.cky-consent-container .cky-consent-bar{border-radius:16px!important;border:1px solid var(--line)!important;
  box-shadow:var(--shadow-lg)!important;font-family:var(--font-body)!important}
.cky-consent-container .cky-title{font-family:var(--font-display)!important;color:var(--ink)!important}
.cky-btn{border-radius:10px!important;font-family:var(--font-body)!important;font-weight:700!important}
.cky-btn.cky-btn-accept{background:var(--green)!important;border-color:var(--green)!important;color:#fff!important}
.cky-btn.cky-btn-reject{background:var(--green-deep)!important;border-color:var(--green-deep)!important;color:#fff!important}
.cky-btn.cky-btn-customize,.cky-btn.cky-btn-preferences{background:#fff!important;border-color:var(--green)!important;color:var(--green)!important}
.cky-btn-revisit-wrapper{background:var(--green)!important}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
  .cse-card:hover,.cse-topic:hover,.cse-time:hover{transform:none}
}
