/* aldocoupons.ca — ac skin: coupon book on dark navy */
:root{
  --ink:#121829; --navy:#18203a; --navy2:#222c4d; --line:#2f3a60; --paper:#f6efe0; --paper2:#efe4cc; --coral:#ff6b57; --coral2:#e9533f;
  --mint:#7fd1b9; --txt:#e9ecf6; --mute:#a5adc7; --ptxt:#2a2418; --pmute:#6f6450;
  --hd:'Instrument Serif',Georgia,serif; --b:'Chivo',system-ui,sans-serif; --m:'Chivo Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink) url(/img/bg-blobs.webp) center top/1600px auto no-repeat;color:var(--txt);font:16px/1.7 var(--b)}
img{max-width:100%;height:auto;display:block}
a{color:var(--mint)}
.ac-wrap{max-width:1160px;margin:0 auto;padding:0 20px}

/* top */
.ac-top{position:sticky;top:0;z-index:40;background:#121829ee;backdrop-filter:blur(8px);border-bottom:1px dashed var(--line)}
.ac-top .ac-wrap{display:flex;align-items:center;gap:18px;height:64px}
.ac-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:400 26px/1 var(--hd)}
.ac-logo svg{width:38px;height:28px}
.ac-logo i{font-style:italic;color:var(--coral)}
.ac-nav{margin-left:auto;display:flex;align-items:center;gap:2px}
.ac-nav a,.ac-nav summary{color:var(--txt);text-decoration:none;font-size:14px;font-weight:600;padding:8px 12px;border-radius:999px;cursor:pointer;list-style:none}
.ac-nav a:hover,.ac-nav summary:hover{background:#ffffff12}
.ac-nav summary::-webkit-details-marker{display:none}
.ac-nav summary:after{content:" ▾";font-size:11px;color:var(--mute)}
.ac-nav details{position:relative}
.ac-drop{position:absolute;right:0;top:44px;background:var(--paper);border-radius:14px;padding:8px;min-width:260px;display:grid;box-shadow:0 20px 40px #0008}
.ac-drop a{color:var(--ptxt);border-radius:8px}
.ac-drop a:hover{background:var(--paper2)}
.ac-lang{border:1px dashed var(--mute);font-family:var(--m)!important;font-size:12.5px!important}
.ac-burger{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:26px;cursor:pointer}

/* hero */
.ac-hero{padding:46px 0 26px}
.ac-hero .ac-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}
.ac-kicker{display:inline-block;font:500 12.5px var(--m);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--mint);padding:3px 10px;border-radius:4px;margin-bottom:14px}
.ac-hero h1{font:400 clamp(38px,5.6vw,68px)/1.02 var(--hd);margin:0 0 14px;letter-spacing:-.01em}
.ac-hero h1 em{color:var(--coral)}
.ac-hero p.ac-sub{font-size:17.5px;color:#cfd5e8;margin:0 0 18px;max-width:640px}
.ac-meta{font:400 12.5px var(--m);color:var(--mute)}
.ac-meta b{color:#fff;font-weight:500}
.ac-art{border-radius:18px;overflow:hidden;transform:rotate(1.5deg);box-shadow:0 26px 50px #0007;border:6px solid var(--paper)}
.ac-chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.ac-chip{font:500 13px var(--m);color:var(--txt);text-decoration:none;border:1px dashed var(--mute);border-radius:999px;padding:6px 12px}
.ac-chip:hover,.ac-chip.on{background:var(--coral);border-color:var(--coral);color:#fff}

/* coupon tickets */
.ac-tks{display:grid;gap:18px;margin:10px 0 30px}
.ac-tk{display:grid;grid-template-columns:1fr 360px;background:var(--paper);color:var(--ptxt);border-radius:16px;position:relative;filter:drop-shadow(0 14px 22px #0006)}
.ac-tk:before,.ac-tk:after{content:"";position:absolute;right:348px;width:24px;height:24px;border-radius:50%;background:var(--ink)}
.ac-tk:before{top:-12px}.ac-tk:after{bottom:-12px}
.ac-tkm{padding:22px 26px;display:grid;grid-template-columns:96px 1fr;gap:18px;align-items:center;border-right:2px dashed #cdbf9f}
.ac-tkm img{width:96px;height:96px;border-radius:14px;object-fit:contain;background:#fff}
.ac-no{font:500 12px var(--m);color:var(--pmute);letter-spacing:.06em}
.ac-tkm h3{font:400 30px/1.05 var(--hd);margin:2px 0 6px;color:var(--navy)}
.ac-tkm h3 small{display:block;font:600 14px var(--b);color:var(--pmute);margin-top:4px}
.ac-tkm p{margin:6px 0 0;font-size:14px;color:#4a4232}
.ac-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.ac-badge{font:500 11.5px var(--m);background:var(--navy);color:var(--paper);border-radius:4px;padding:2px 7px}
.ac-badge.c{background:var(--coral)}
.ac-badge.m{background:var(--mint);color:var(--ink)}
.ac-tks .ac-stub{padding:18px 22px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.ac-terms{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font:400 12.5px var(--m);color:var(--pmute)}
.ac-terms b{display:block;font:600 15px var(--b);color:var(--ptxt)}
.ac-cost{font:500 12px/1.5 var(--m);background:var(--paper2);border-radius:8px;padding:7px 10px;color:var(--ptxt)}
.ac-cost b{color:var(--coral2)}
.ac-btn{display:flex;justify-content:center;align-items:center;gap:8px;background:var(--coral);color:#fff;text-decoration:none;font:700 15px var(--b);border-radius:10px;padding:12px 16px;border:0;cursor:pointer}
.ac-btn:hover{background:var(--coral2)}
.ac-btn.ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy);font-size:13.5px;padding:8px 12px}
.ac-btn.ghost:hover{background:var(--navy);color:var(--paper)}
.ac-row2{display:grid;grid-template-columns:1fr;gap:8px}
.ac-code{font:500 12px var(--m);color:var(--pmute);text-align:center}
.ac-code b{color:var(--ptxt);border:1px dashed var(--pmute);padding:1px 6px;border-radius:4px}
.ac-fine{font-size:11.5px;color:var(--pmute);line-height:1.4}

/* sections */
.ac-sec{margin:0 0 34px}
.ac-sh{display:flex;align-items:baseline;gap:14px;margin:0 0 14px;border-bottom:1px dashed var(--line);padding-bottom:10px}
.ac-sh h2{font:400 36px/1.1 var(--hd);margin:0}
.ac-sh span{font:400 12.5px var(--m);color:var(--mute)}
.ac-box{background:var(--navy);border:1px solid var(--line);border-radius:18px;padding:30px 34px}

/* calculator */
.ac-calc{background:var(--paper);color:var(--ptxt);border-radius:18px;padding:26px 28px;display:grid;grid-template-columns:1.1fr .9fr;gap:26px;position:relative}
.ac-calc h2{font:400 34px/1.1 var(--hd);margin:0 0 6px;color:var(--navy)}
.ac-calc p.ac-cl{margin:0 0 16px;color:var(--pmute);font-size:14.5px}
.ac-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ac-fields label{display:grid;gap:4px;font:500 12px var(--m);color:var(--pmute);text-transform:uppercase;letter-spacing:.04em}
.ac-fields input,.ac-fields select{font:600 16px var(--b);color:var(--ptxt);background:#fff;border:1.5px solid #d9cbad;border-radius:10px;padding:9px 11px;width:100%}
.ac-fields input:focus,.ac-fields select:focus{outline:2px solid var(--coral);border-color:transparent}
.ac-out{background:var(--navy);color:var(--txt);border-radius:14px;padding:20px 22px;display:grid;gap:12px;align-content:start}
.ac-out div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:8px;font-size:14.5px}
.ac-out div:last-of-type{border:0}
.ac-out b{font:600 18px var(--m);color:#fff}
.ac-out .ac-ev b{color:var(--mint)}
.ac-out .ac-ev.neg b{color:var(--coral)}
.ac-verdict{font-size:14px;color:#cfd5e8;margin:4px 0 0;line-height:1.5}

/* article */
.ac-split{display:grid;grid-template-columns:1fr 280px;gap:30px;align-items:start}
.ac-artc h2{font:400 34px/1.12 var(--hd);margin:38px 0 10px;color:#fff}
.ac-artc h3{font:700 19px/1.35 var(--b);margin:26px 0 8px;color:var(--paper)}
.ac-artc p{margin:0 0 15px;color:#d9ddeb}
.ac-artc ul,.ac-artc ol{padding-left:22px;margin:0 0 16px;color:#d9ddeb}
.ac-artc li{margin:5px 0}
.ac-artc > :first-child{margin-top:0}
.ac-artc strong{color:#fff}
.ac-artc blockquote{margin:18px 0;padding:14px 18px;border:1px dashed var(--coral);border-radius:12px;color:#f3d6d0}
.ac-tw{overflow-x:auto;margin:8px 0 22px;border-radius:12px;border:1px solid var(--line)}
.ac-artc table,.ac-cmp table{width:100%;border-collapse:collapse;font-size:14.5px}
.ac-artc th,.ac-cmp th{background:var(--navy2);color:var(--paper);text-align:left;padding:10px 12px;font:600 13px var(--m);text-transform:uppercase;letter-spacing:.03em}
.ac-artc td,.ac-cmp td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top;color:#dfe3ef}
.ac-cmp td b{color:#fff}
.ac-artc figure{margin:26px 0}
.ac-artc figure img{border-radius:14px;border:5px solid var(--paper)}
.ac-artc figcaption{font:400 12.5px var(--m);color:var(--mute);margin-top:6px}
.ac-toc{position:sticky;top:84px;background:var(--paper);color:var(--ptxt);border-radius:14px;padding:16px 18px;font-size:14px}
.ac-toc b{font:400 22px var(--hd);color:var(--navy)}
.ac-toc ol{margin:8px 0 0;padding-left:20px}
.ac-toc li{margin:5px 0}
.ac-toc a{color:var(--ptxt);text-decoration:none}
.ac-toc a:hover{color:var(--coral2)}

/* bonus-type cards */
.ac-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.ac-type{background:var(--paper);color:var(--ptxt);border-radius:14px;overflow:hidden;text-decoration:none;display:flex;flex-direction:column}
.ac-type img{aspect-ratio:3/2;object-fit:cover;width:100%}
.ac-type div{padding:12px 16px 16px}
.ac-type b{font:400 24px/1.1 var(--hd);color:var(--navy)}
.ac-type span{display:block;font-size:13.5px;color:var(--pmute);margin-top:4px}
.ac-type:hover{transform:rotate(-.6deg) translateY(-2px);transition:.15s}

/* faq */
.ac-faq details{border-bottom:1px dashed var(--line)}
.ac-faq summary{cursor:pointer;list-style:none;padding:14px 34px 14px 0;font-weight:700;position:relative;color:#fff}
.ac-faq summary::-webkit-details-marker{display:none}
.ac-faq summary:after{content:"+";position:absolute;right:4px;top:6px;font:400 28px var(--hd);color:var(--coral)}
.ac-faq details[open] summary:after{content:"×"}
.ac-faq p{margin:0 0 16px;color:#cfd5e8}

/* footer */
.ac-foot{border-top:1px dashed var(--line);padding:40px 0 24px;margin-top:20px;font-size:14px;color:var(--mute)}
.ac-foot .ac-wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
.ac-foot h4{font:500 12.5px var(--m);color:var(--paper);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px}
.ac-foot a{display:block;color:#d4d9ea;text-decoration:none;padding:3px 0}
.ac-foot a:hover{color:var(--coral)}
.ac-legal{grid-column:1/-1;border-top:1px dashed var(--line);padding-top:16px;font-size:12.5px}
.ac-age{display:inline-grid;place-items:center;width:38px;height:38px;border:2px dashed var(--coral);border-radius:50%;font:500 12px var(--m);color:var(--coral);margin-right:8px;vertical-align:middle}

@media (max-width:980px){
  .ac-hero .ac-wrap{grid-template-columns:1fr}
  .ac-art{max-width:520px}
  .ac-tk{grid-template-columns:1fr}
  .ac-tk:before,.ac-tk:after{display:none}
  .ac-tkm{border-right:0;border-bottom:2px dashed #cdbf9f}
  .ac-calc{grid-template-columns:1fr}
  .ac-split{grid-template-columns:1fr}
  .ac-toc{position:static;order:-1}
  .ac-foot .ac-wrap{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  body{font-size:15.5px}
  .ac-wrap{padding:0 16px}
  .ac-burger{display:block}
  .ac-nav{display:none;position:absolute;left:0;right:0;top:64px;background:var(--ink);flex-direction:column;align-items:stretch;padding:10px 16px 18px;border-bottom:1px dashed var(--line)}
  .ac-nav.on{display:flex}
  .ac-drop{position:static;box-shadow:none}
  .ac-tkm{grid-template-columns:64px 1fr;padding:18px}
  .ac-tkm img{width:64px;height:64px}
  .ac-tkm h3{font-size:25px}
  .ac-box{padding:22px 18px}
  .ac-calc{padding:20px 16px}
  .ac-fields{grid-template-columns:1fr}
  .ac-sh h2{font-size:30px}
  .ac-foot .ac-wrap{grid-template-columns:1fr}
}
