
:root{
  --cream:#fff7ea;
  --cream-2:#fffdf7;
  --paper:#fffaf1;
  --card:#ffffff;
  --navy:#17304a;
  --navy-2:#203b5a;
  --text:#425066;
  --muted:#6b7689;
  --coral:#ff6b4a;
  --coral-dark:#e85d3d;
  --mint:#7ed6c1;
  --sky:#5db7e6;
  --yellow:#ffd74d;
  --line:#eadcc7;
  --shadow:0 16px 38px rgba(38,27,12,.09);
  --radius:28px;
  --radius-sm:18px;
  --max:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:linear-gradient(180deg,var(--cream),#fffdf8 52%,var(--cream));
  color:var(--text);
  line-height:1.62;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{width:min(var(--max),calc(100% - 36px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;padding:.75rem 1rem;z-index:999}
.skip-link:focus{left:1rem;top:1rem}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,247,234,.93);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(234,220,199,.82);
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:76px}
.brand{display:flex;align-items:center}
.brand img{width:172px;max-width:48vw}
.nav-links{display:flex;align-items:center;gap:.25rem}
.nav-links a{font-weight:780;color:var(--navy-2);padding:.62rem .78rem;border-radius:999px;font-size:.95rem}
.nav-links a:hover,.nav-links a[aria-current="page"]{background:#fff;color:var(--coral-dark)}
.nav-toggle{display:none;border:0;background:#fff;border-radius:14px;padding:.7rem .82rem;color:var(--navy);font-weight:850;box-shadow:0 6px 18px rgba(0,0,0,.08)}
.button,.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
  border:0;border-radius:999px;padding:.88rem 1.08rem;
  font-weight:850;background:var(--coral);color:white;
  box-shadow:0 10px 22px rgba(255,107,74,.22);cursor:pointer
}
.button:hover,.btn:hover{background:var(--coral-dark);transform:translateY(-1px)}
.button.secondary,.btn.secondary{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}
.button.small{padding:.62rem .82rem;font-size:.92rem}
.badge{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--line);background:#fff;border-radius:999px;padding:.45rem .72rem;color:var(--navy);font-weight:800;font-size:.88rem}
.hero{padding:3.7rem 0 3rem}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(280px,.97fr);align-items:center;gap:2.4rem}
.kicker{color:var(--coral-dark);font-weight:850;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;margin:0 0 .72rem}
h1,h2,h3{font-family:"Trebuchet MS",Inter,system-ui,sans-serif;color:var(--navy);line-height:1.09;margin:0 0 1rem;letter-spacing:-.028em}
h1{font-size:clamp(2.2rem,5vw,3.45rem);font-weight:760;max-width:13.5ch}
h2{font-size:clamp(1.72rem,3.6vw,2.55rem);font-weight:730}
h3{font-size:1.28rem;font-weight:760;letter-spacing:-.015em}
p{margin:0 0 1rem}
.lead{font-size:clamp(1.03rem,2.1vw,1.2rem);color:#4d5a70;max-width:680px}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.35rem 0 1.1rem}
.trust-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.05rem}
.hero-art{
  background:linear-gradient(180deg,#fffdf8,#fff3e3);
  border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:1.2rem;min-height:360px;display:flex;align-items:center;justify-content:center;overflow:visible;
}
.hero-art img{max-height:560px;width:auto;max-width:100%;object-fit:contain}
.section{padding:3.35rem 0}
.section.compact{padding:2.3rem 0}
.section-title{max-width:780px;margin-bottom:1.6rem}
.section-title.center{text-align:center;margin-inline:auto}
.section-title p{font-size:1.06rem;color:#5b6678}
.soft-band{background:linear-gradient(135deg,#fffdf7,#fff0e4);border-block:1px solid var(--line)}
.grid{display:grid;gap:1rem}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.card{
  background:rgba(255,255,255,.76);border:1px solid var(--line);
  border-radius:var(--radius-sm);padding:1.2rem;box-shadow:0 10px 26px rgba(38,27,12,.055)
}
.card h3{color:var(--navy)}
.icon{font-size:1.65rem;line-height:1;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:15px;background:#fff2e9;margin-bottom:.72rem}
.panel{
  background:rgba(255,250,241,.8);border:1px solid var(--line);
  border-radius:30px;padding:clamp(1rem,3vw,1.8rem);box-shadow:var(--shadow);overflow:hidden
}
.panel.no-pad{padding:.65rem}
.panel img,.art-panel img{width:100%;height:auto;object-fit:contain;border-radius:22px}
.art-panel{background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:28px;padding:.75rem;box-shadow:var(--shadow)}
.action-card{display:grid;grid-template-rows:auto 1fr;gap:.8rem;text-align:center}
.action-card img{max-height:190px;margin-inline:auto;width:auto;object-fit:contain}
.package{position:relative;display:flex;flex-direction:column;gap:1rem}
.package.featured{border:2px solid rgba(255,107,74,.44);background:linear-gradient(180deg,#fff,#fff4e8)}
.price{font-size:1.82rem;font-weight:850;color:var(--navy);letter-spacing:-.035em}
.subprice{color:var(--coral-dark);font-weight:800}
.list{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.list li{position:relative;padding-left:1.55rem}
.list li:before{content:"♥";position:absolute;left:0;color:var(--coral);font-size:.85rem;top:.1rem}
.fine{font-size:.92rem;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:center}
.split .copy{padding:1rem}
.service-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.service-pill{display:flex;align-items:center;gap:.65rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:.75rem;font-weight:800;color:var(--navy)}
.service-pill img{width:34px;height:34px;object-fit:contain}
.person-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.person-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:1rem;box-shadow:0 9px 24px rgba(38,27,12,.07);display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}
.person-card img{height:310px;width:auto;max-width:100%;object-fit:contain;margin-bottom:.6rem}
.person-card h3{font-size:1.06rem;margin:.2rem 0 .25rem}
.person-card p{font-size:.94rem;margin:0;color:#5f6b7d}
.work-card{display:grid;grid-template-columns:1fr;gap:1rem}
.work-thumb{min-height:170px;border-radius:22px;background:linear-gradient(135deg,#10243d,#ff6b4a);color:#fff;padding:1.3rem;display:flex;flex-direction:column;justify-content:flex-end}
.work-thumb h3{color:#fff}.work-thumb p{color:rgba(255,255,255,.88)}
.faq-list{display:grid;gap:1rem}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.15rem}
.faq-item h3{font-size:1.1rem;margin-bottom:.45rem}
.faq-item p{margin:0;color:#566276}
.form{display:grid;gap:1rem}
.form label{display:grid;gap:.35rem;font-weight:800;color:var(--navy)}
.form input,.form select,.form textarea{font:inherit;border:1px solid var(--line);border-radius:16px;padding:.9rem 1rem;background:#fff;color:var(--text)}
.form textarea{min-height:140px;resize:vertical}
.site-footer{background:#10243d;color:#e9f1fa;margin-top:3rem;padding:2.8rem 0}
.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:1.4rem}
.site-footer a{color:#fff}
.footer-logo{width:180px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.18));margin-bottom:.8rem}
.footer-links{display:grid;gap:.45rem}
.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:1.8rem;padding-top:1.2rem;color:#b8c5d4;font-size:.92rem}
.page-hero{padding:3rem 0 1.7rem}
.page-hero .lead{max-width:760px}
.mini-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,390px);align-items:center;gap:2rem}
.mini-hero img{max-height:340px;margin-inline:auto;object-fit:contain}
.full-panel{border-radius:24px;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;background:#fff}
.full-panel img{width:100%;height:auto;object-fit:contain}
@media (max-width:980px){
  .grid-4,.grid-5,.person-grid,.service-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3{grid-template-columns:1fr 1fr}
  .hero-grid,.split,.mini-hero{grid-template-columns:1fr}
  .hero{padding-top:2.4rem}
  h1{max-width:15ch}
  .hero-art{max-width:560px;margin-inline:auto}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .nav-toggle{display:inline-flex}
  .nav-links{position:absolute;left:18px;right:18px;top:76px;display:none;flex-direction:column;align-items:stretch;background:#fffdf7;border:1px solid var(--line);border-radius:22px;padding:.7rem;box-shadow:var(--shadow)}
  .nav-links.open{display:flex}
  .nav-links a{text-align:center;padding:.9rem}
  .grid-2,.grid-3,.grid-4,.grid-5,.person-grid,.service-strip{grid-template-columns:1fr}
  .container{width:min(var(--max),calc(100% - 28px))}
  .hero{padding-bottom:2rem}
  .section{padding:2.65rem 0}
  h1{font-size:2.35rem}
  h2{font-size:1.95rem}
  .card{padding:1.05rem}
  .footer-grid{grid-template-columns:1fr}
  .panel{border-radius:24px}
  .hero-actions .button{width:100%}
  .hero-art{min-height:0;padding:.8rem}
  .hero-art img{max-height:440px}
  .person-card img{height:260px}
}
@media (prefers-reduced-motion:no-preference){.button,.card,.person-card{transition:.18s ease}.card:hover,.person-card:hover{transform:translateY(-2px)}}


/* V1.8 character integration pass: mascots float into the site rather than sitting in heavy cards */
.hero-art{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  min-height:0 !important;
  position:relative;
}
.hero-art:before{
  content:"";
  position:absolute;
  inset:10% 4% 6% 8%;
  border-radius:42% 58% 48% 52%;
  background:radial-gradient(circle at 50% 45%, rgba(255,255,255,.78), rgba(255,216,107,.18) 62%, rgba(126,214,193,.13));
  z-index:-1;
}
.hero-art img{
  max-height:610px !important;
  width:auto !important;
  filter:drop-shadow(0 20px 24px rgba(23,48,74,.14));
}
.card.action-card{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:.8rem .7rem !important;
  overflow:visible;
}
.card.action-card img{
  max-height:158px !important;
  filter:drop-shadow(0 12px 14px rgba(23,48,74,.12));
}
.card.action-card:hover{transform:none !important}
.action-card div{
  background:rgba(255,255,255,.66);
  border:1px solid rgba(234,220,199,.75);
  border-radius:18px;
  padding:.95rem;
}
.art-panel{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:visible;
}
.art-panel img{
  border-radius:0 !important;
  filter:drop-shadow(0 18px 20px rgba(23,48,74,.12));
}
.person-card{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:.65rem .45rem !important;
  overflow:visible !important;
}
.person-card img{
  height:275px !important;
  filter:drop-shadow(0 14px 16px rgba(23,48,74,.12));
}
.person-card h3,
.person-card p{
  background:rgba(255,255,255,.72);
  border-left:1px solid rgba(234,220,199,.7);
  border-right:1px solid rgba(234,220,199,.7);
  margin-inline:auto;
  max-width:260px;
}
.person-card h3{
  border-top:1px solid rgba(234,220,199,.7);
  border-radius:16px 16px 0 0;
  padding:.7rem .85rem .2rem;
}
.person-card p{
  border-bottom:1px solid rgba(234,220,199,.7);
  border-radius:0 0 16px 16px;
  padding:.1rem .85rem .75rem;
}
.split > img,
.panel.split > img{
  max-height:280px;
  width:auto;
  margin-inline:auto;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.13));
}
.panel.split{
  background:linear-gradient(135deg,rgba(255,255,255,.62),rgba(255,240,228,.62));
}
.full-panel{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.full-panel img{
  border-radius:24px;
  box-shadow:0 14px 28px rgba(38,27,12,.08);
}
.service-pill{
  background:rgba(255,255,255,.74) !important;
}
@media (max-width:760px){
  .hero-art img{max-height:430px !important}
  .card.action-card img{max-height:146px !important}
  .person-card img{height:245px !important}
  .action-card div{padding:.85rem}
}

/* V1.9 action image swap: use David's new finished action panels without extra bubbles or tight boxes */
.action-card img{
  max-height:250px !important;
  width:auto !important;
  max-width:100% !important;
  border-radius:22px;
  object-fit:contain !important;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.12));
}
.action-card div{
  margin-top:-.15rem;
}
.mini-hero img[src$="bunny-action-planning-v12.png"],
.split img[src$="bunny-action-planning-v12.png"]{
  max-height:340px !important;
  width:auto !important;
  border-radius:24px;
  object-fit:contain !important;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.12));
}
@media (max-width:760px){
  .action-card img{max-height:300px !important;}
  .mini-hero img[src$="bunny-action-planning-v12.png"],
  .split img[src$="bunny-action-planning-v12.png"]{max-height:320px !important;}
}

/* V1.10 character cleanup: remove card-like backgrounds around mascot artwork and stop stray dot artefacts showing */
.hero-art,
.art-panel,
.card.action-card,
.person-card,
.full-panel{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.hero-art::before{
  display:none !important;
}
.hero-art img,
.art-panel img,
.action-card img,
.person-card img,
.mini-hero img,
.split > img,
.panel.split > img{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  object-fit:contain !important;
  image-rendering:auto;
}
.action-card div,
.person-card h3,
.person-card p{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.action-card div{
  padding:.4rem .2rem 0 !important;
  margin-top:.25rem !important;
}
.person-card{
  padding:.4rem .2rem !important;
}
.person-card h3{
  padding:.45rem .4rem .15rem !important;
  max-width:280px;
}
.person-card p{
  padding:0 .4rem .45rem !important;
  max-width:280px;
}
.panel.split:has(img[src*="bunny-hoodie-cutout"]),
.panel.split:has(img[src*="kitty-main-cutout"]),
.panel.split:has(img[src*="toolkit-bag"]),
.panel.split:has(img[src*="bunny-planning-simple-new"]){
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
/* Keep content cards/cards readable, but never box the character artwork itself */
.work-card,
.package,
.faq-item,
.form,
.card:not(.action-card):not(.person-card){
  overflow:visible;
}
@media (max-width:760px){
  .action-card div{padding:.25rem .1rem 0 !important;}
  .person-card h3,.person-card p{max-width:320px;}
}


/* V1.11 homepage image artefact cleanup */
/* The large transparent character cut-outs are now cleaned high-res assets. Keep them sensible in size so edges stay tidy. */
.split > img[src*="bunny-head-wink"]{
  max-height:230px !important;
  max-width:260px !important;
  border-radius:999px;
  filter:drop-shadow(0 12px 18px rgba(23,48,74,.10));
}
.art-panel img[src*="kitty-main-cutout"]{
  max-height:520px;
  width:auto;
  margin-inline:auto;
}
.mini-hero img[src*="kitty-main-cutout"]{
  max-height:430px !important;
  width:auto;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.10));
}
.hero-art img[src*="bunny-hero-full"]{
  max-height:590px !important;
}
@media(max-width:760px){
  .art-panel img[src*="kitty-main-cutout"]{max-height:390px;}
  .mini-hero img[src*="kitty-main-cutout"]{max-height:360px !important;}
}


/* V1.12 homepage balance and new action images */
/* Use the new finished problem-section artwork without cropping or stretching. */
.action-card img[src*="bunny-action-fixit-v12"],
.action-card img[src*="bunny-action-launch-v12"],
.action-card img[src*="bunny-action-planning-v12"]{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:230px !important;
  margin:0 auto .55rem;
  object-fit:contain !important;
  background:transparent !important;
  border:0 !important;
  border-radius:18px !important;
  box-shadow:none !important;
  filter:none !important;
}
/* Kitty's Questions should support the copy, not dominate the whole homepage. */
.art-panel img[src*="kitty-main-cutout"]{
  max-height:340px !important;
  max-width:280px !important;
  width:auto !important;
  display:block;
  margin-inline:auto;
  filter:drop-shadow(0 10px 16px rgba(23,48,74,.08));
}
section:has(img[src*="kitty-main-cutout"]) .split,
.split:has(img[src*="kitty-main-cutout"]){
  align-items:center;
}
/* Final CTA Bunny should be a small friendly sign-off, not another big mascot moment. */
.panel.split img[src*="bunny-head-wink"]{
  max-height:180px !important;
  max-width:210px !important;
  width:auto !important;
}
@media(max-width:760px){
  .art-panel img[src*="kitty-main-cutout"]{
    max-height:260px !important;
    max-width:220px !important;
  }
  .action-card img[src*="bunny-action-fixit-v12"],
  .action-card img[src*="bunny-action-launch-v12"],
  .action-card img[src*="bunny-action-planning-v12"]{
    max-height:220px !important;
  }
  .panel.split img[src*="bunny-head-wink"]{
    max-height:150px !important;
    max-width:180px !important;
  }
}


/* V1.14 final homepage CTA image swap */
.panel.split img[src*="bunny-cta-laptop"]{
  max-height:250px !important;
  max-width:220px !important;
  width:auto !important;
  display:block;
  object-fit:contain !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 10px 16px rgba(23,48,74,.08));
}
@media(max-width:760px){
  .panel.split img[src*="bunny-cta-laptop"]{
    max-height:210px !important;
    max-width:190px !important;
    margin-inline:auto;
  }
}

/* V1.16 homepage Kitty size tweak */
/* The customer-type Kitty illustrations on the homepage should support the section, not dominate it. */
.person-grid .person-card img[src*="kitty-"]{
  height:220px !important;
  max-height:220px !important;
  width:auto !important;
  max-width:100% !important;
  object-fit:contain !important;
}
.person-grid .person-card{
  padding:.25rem .2rem !important;
}
@media(max-width:760px){
  .person-grid .person-card img[src*="kitty-"]{
    height:215px !important;
    max-height:215px !important;
  }
}


/* V1.17 stronger homepage Who Bunny can help image reduction */
.home-who-help .person-grid{
  gap:.8rem !important;
}
.home-who-help .person-card{
  padding:.35rem .3rem .65rem !important;
  min-height:0 !important;
}
.home-who-help .person-card img,
.home-who-help .person-card img[src*="kitty-"]{
  height:150px !important;
  max-height:150px !important;
  width:auto !important;
  max-width:150px !important;
  object-fit:contain !important;
  margin:0 auto .35rem !important;
}
.home-who-help .person-card h3{
  font-size:.98rem !important;
  margin:.15rem 0 .15rem !important;
  padding:0 .2rem !important;
}
.home-who-help .person-card p{
  font-size:.86rem !important;
  line-height:1.35 !important;
  padding:0 .2rem !important;
}
@media(max-width:760px){
  .home-who-help .person-card img,
  .home-who-help .person-card img[src*="kitty-"]{
    height:135px !important;
    max-height:135px !important;
    max-width:135px !important;
  }
}


/* V1.18 correction: restore the Who Bunny can help images, and shrink the image in the Why Bunny exists section only. */
.home-who-help .person-grid{
  gap:1rem !important;
}
.home-who-help .person-card{
  padding:.65rem .45rem !important;
}
.home-who-help .person-card img,
.home-who-help .person-card img[src*="kitty-"]{
  height:275px !important;
  max-height:275px !important;
  max-width:100% !important;
  width:auto !important;
  object-fit:contain !important;
  margin:0 auto .6rem !important;
}
.home-who-help .person-card h3{
  font-size:1.06rem !important;
  margin:.2rem 0 .25rem !important;
  padding:.7rem .85rem .2rem !important;
}
.home-who-help .person-card p{
  font-size:.94rem !important;
  line-height:1.45 !important;
  padding:.1rem .85rem .75rem !important;
}
.why-bunny-exists .art-panel{
  display:flex;
  align-items:center;
  justify-content:center;
}
.why-bunny-exists .art-panel img{
  /* V1.19: middle ground - big enough to read the built-in speech bubble, not so big it dominates the section. */
  max-height:300px !important;
  max-width:390px !important;
  width:auto !important;
  object-fit:contain !important;
  filter:drop-shadow(0 10px 14px rgba(23,48,74,.08));
}
@media(max-width:760px){
  .home-who-help .person-card img,
  .home-who-help .person-card img[src*="kitty-"]{
    height:245px !important;
    max-height:245px !important;
    max-width:100% !important;
  }
  .why-bunny-exists .art-panel img{
    max-height:245px !important;
    max-width:320px !important;
  }
}


/* V1.20 What's Included page image refresh */
/* Replace the blurry toolkit artwork with clean reusable cards, and give this page fresher Bunny/Kitty artwork. */
.guide-panel-img{
  max-height:210px !important;
  max-width:430px !important;
  width:auto !important;
  border-radius:20px !important;
  box-shadow:0 12px 24px rgba(23,48,74,.08) !important;
  margin-inline:auto;
}
.included-tools-row{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:.85rem;
}
.mini-tool-card{
  background:rgba(255,255,255,.78);
  border:1px solid var(--line);
  border-radius:20px;
  padding:1rem .9rem;
  text-align:center;
  box-shadow:0 10px 22px rgba(38,27,12,.055);
}
.mini-tool-card span{
  display:block;
  font-size:1.65rem;
  line-height:1;
  margin-bottom:.45rem;
}
.mini-tool-card strong{
  display:block;
  color:var(--navy);
  font-size:.98rem;
  margin-bottom:.25rem;
}
.mini-tool-card small{
  display:block;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.35;
}
.boundaries-bunny-img{
  max-height:310px !important;
  max-width:230px !important;
  width:auto !important;
  object-fit:contain !important;
  margin-inline:auto;
  filter:drop-shadow(0 12px 18px rgba(23,48,74,.10));
}
@media(max-width:980px){
  .included-tools-row{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:760px){
  .guide-panel-img{max-height:170px !important;max-width:100% !important;}
  .included-tools-row{grid-template-columns:1fr;}
  .boundaries-bunny-img{max-height:260px !important;max-width:210px !important;}
}


/* V1.22 What's Included correction: keep Bunny & Kitty guide image, bring back toolkit strip, and make toolkit jump to explanation cards. */
.toolkit-picture-section{
  padding-top:1.2rem !important;
}
.toolkit-click-panel{
  display:flex;
  justify-content:center;
}
.toolkit-row-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.55rem;
  text-decoration:none;
  color:var(--navy);
}
.toolkit-row-link img{
  display:block;
  width:min(100%, 779px) !important;
  max-width:779px !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:22px !important;
  box-shadow:0 12px 26px rgba(23,48,74,.08) !important;
}
.toolkit-row-link span{
  font-weight:800;
  color:var(--orange);
}
.toolkit-contents{
  scroll-margin-top:120px;
}
@media(max-width:760px){
  .toolkit-row-link span{font-size:.95rem;text-align:center;}
}

/* V1.23 What's Included / Toolkit tidy-up */
/* Use the small Kitty & Bunny explanation panel in the page hero, not the full brand guide board. */
.whats-hero-guide-img{
  max-width:360px !important;
  max-height:170px !important;
  width:100% !important;
  object-fit:contain !important;
  border-radius:20px !important;
  box-shadow:0 12px 24px rgba(23,48,74,.08) !important;
}
/* The toolkit image now opens a separate Toolkit page, so it should look like a clear gateway, not a jump link. */
.toolkit-row-link span{
  color:var(--coral-dark) !important;
  font-weight:850 !important;
}
.toolkit-row-link:hover img{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(23,48,74,.12) !important;
}
.toolkit-row-link img{
  transition:.18s ease;
}
.toolkit-hero-img{
  max-width:520px !important;
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  border-radius:24px !important;
  box-shadow:0 14px 30px rgba(23,48,74,.08) !important;
  background:#fff !important;
}
.toolkit-detail-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.toolkit-card .tool-icon{
  display:inline-flex;
  width:46px;
  height:46px;
  align-items:center;
  justify-content:center;
  border-radius:16px;
  background:#fff3e9;
  font-size:1.55rem;
  margin-bottom:.75rem;
}
.toolkit-style-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
}
.style-choice-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  padding:1.35rem;
  box-shadow:0 10px 26px rgba(38,27,12,.06);
}
.style-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.38rem .62rem;
  border-radius:999px;
  background:#fff0e7;
  color:var(--coral-dark);
  font-weight:850;
  font-size:.8rem;
  margin-bottom:.8rem;
}
@media(max-width:980px){
  .toolkit-detail-grid,
  .toolkit-style-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:760px){
  .whats-hero-guide-img{max-width:330px !important;max-height:155px !important;}
  .toolkit-detail-grid,
  .toolkit-style-grid{grid-template-columns:1fr;}
  .toolkit-hero-img{max-width:100% !important;}
}

/* V1.24: Toolkit cards are now clickable demo links, and What’s Included no longer duplicates the toolkit detail cards. */
.style-choice-card{
  display:block;
  color:inherit;
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.style-choice-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 36px rgba(24,35,52,.12);
  border-color:rgba(230,91,48,.35);
}
.style-choice-card:focus-visible{
  outline:3px solid rgba(230,91,48,.42);
  outline-offset:4px;
}
.card-link-text{
  display:inline-block;
  margin-top:1rem;
  color:var(--orange);
  font-weight:800;
}


/* V1.25: Work page and What's Included image refinements */
.whats-hero-guide-img[src*="whats-included-apron-bunny"]{
  max-width:240px !important;
  max-height:300px !important;
  width:auto !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.10));
}
.work-proof-panel{
  grid-template-columns:minmax(180px,260px) minmax(0,1fr) !important;
  align-items:center;
  max-width:980px;
}
.work-polo-bunny-img{
  max-height:300px !important;
  max-width:210px !important;
  width:auto !important;
  object-fit:contain !important;
  margin-inline:auto;
  filter:drop-shadow(0 14px 18px rgba(23,48,74,.10));
}
.work-proof-panel h2{
  max-width:640px;
}
.work-proof-panel p:not(.kicker){
  max-width:680px;
}
@media(max-width:760px){
  .whats-hero-guide-img[src*="whats-included-apron-bunny"]{
    max-height:245px !important;
    max-width:190px !important;
  }
  .work-proof-panel{
    grid-template-columns:1fr !important;
    text-align:left;
  }
  .work-polo-bunny-img{
    max-height:250px !important;
    max-width:180px !important;
  }
}

/* V1.26 FAQ image and simplified nav */
.mini-hero img[src*="faq-thinking-bunny-v26"]{
  max-height:360px;
  width:auto;
  border-radius:24px;
}
@media (max-width: 760px){
  .mini-hero img[src*="faq-thinking-bunny-v26"]{max-height:300px;}
}

/* V1.27 Work page: customer-facing proof page, live links and QR proof panel */
.button-row{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  align-items:center;
  margin-top:.35rem;
}
.button.ghost{
  background:#fffdf7;
  color:var(--navy);
  border:1px solid var(--line);
  box-shadow:none;
}
.button.ghost:hover{
  border-color:rgba(230,91,48,.42);
  color:var(--orange);
}
.small-lead{
  max-width:760px;
  font-size:1.05rem;
}
.template-preview-section .style-choice-card h3{
  margin-top:.1rem;
}
.qr-proof-panel{
  grid-template-columns:minmax(0,1fr) minmax(180px,260px) !important;
  align-items:center;
}
.qr-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.7rem;
  text-decoration:none;
  color:var(--navy);
  background:#fffdf7;
  border:1px solid var(--line);
  border-radius:24px;
  padding:1rem;
  box-shadow:0 10px 26px rgba(38,27,12,.06);
}
.qr-card img{
  width:185px !important;
  height:185px !important;
  object-fit:contain !important;
  border-radius:12px !important;
  box-shadow:none !important;
  filter:none !important;
  margin:0 !important;
}
.qr-card span{
  font-size:.82rem;
  font-weight:800;
  color:var(--muted);
  text-align:center;
}
@media(max-width:760px){
  .button-row .button{width:100%;text-align:center;justify-content:center;}
  .qr-proof-panel{grid-template-columns:1fr !important;}
  .qr-card{max-width:260px;margin-inline:auto;}
}


/* V1.30 Ask Bunny hero banner refresh */
.ask-bunny-hero-banner{
  max-width:680px;
  width:100%;
  max-height:270px !important;
  object-fit:contain !important;
  border-radius:24px;
  box-shadow:0 12px 30px rgba(38,27,12,.07);
}
.ask-bunny-help-panel img.ask-bunny-kitty-types{
  width:100%;
  max-height:250px;
  object-fit:contain;
  object-position:center;
  border-radius:22px;
  margin-bottom:1rem;
  box-shadow:none;
}
@media(max-width:760px){
  .ask-bunny-hero-banner{max-height:210px !important;}
  .ask-bunny-help-panel img.ask-bunny-kitty-types{max-height:210px;}
}

/* Netlify form honeypot field */
.hidden-field{display:none !important;}


/* V1.32 mobile homepage: a shorter guided journey, not a stacked desktop brochure */
.mobile-home-journey{
  display:none;
}
@media(max-width:760px){
  body.home .desktop-home-section{
    display:none !important;
  }
  body.home .hero{
    padding:1.45rem 0 1rem;
  }
  body.home .hero-grid{
    gap:.7rem;
  }
  body.home .hero .kicker{
    font-size:.72rem;
    margin-bottom:.48rem;
  }
  body.home h1{
    font-size:2rem;
    max-width:11.8ch;
    margin-bottom:.7rem;
  }
  body.home .hero .lead{
    font-size:1rem;
    line-height:1.48;
    margin-bottom:.85rem;
  }
  body.home .hero-actions{
    margin:.85rem 0 .55rem;
    gap:.55rem;
  }
  body.home .trust-row{
    display:none !important;
  }
  body.home .hero-art{
    margin-top:.25rem;
  }
  body.home .hero-art img[src*="bunny-hero-full"]{
    max-height:285px !important;
  }
  .mobile-home-journey{
    display:block;
    padding:0 0 1.6rem;
  }
  .mobile-journey-wrap{
    display:grid;
    gap:1rem;
  }
  .mobile-step-strip{
    display:grid;
    grid-template-columns:1fr;
    gap:.55rem;
    margin-top:.2rem;
  }
  .mobile-problem-chip{
    display:flex;
    align-items:center;
    gap:.65rem;
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
    padding:.74rem .85rem;
    color:var(--navy);
    box-shadow:0 8px 18px rgba(38,27,12,.05);
  }
  .mobile-problem-chip span{
    display:inline-flex;
    width:34px;
    height:34px;
    align-items:center;
    justify-content:center;
    border-radius:12px;
    background:#fff2e9;
    flex:0 0 auto;
  }
  .mobile-problem-chip strong{
    line-height:1.2;
  }
  .mobile-slice{
    background:rgba(255,255,255,.78);
    border:1px solid var(--line);
    border-radius:24px;
    padding:1rem;
    box-shadow:0 10px 24px rgba(38,27,12,.055);
  }
  .mobile-section-head .kicker{
    margin-bottom:.35rem;
  }
  .mobile-section-head h2{
    font-size:1.45rem;
    margin-bottom:.8rem;
  }
  .mobile-mini-cards{
    display:grid;
    gap:.55rem;
  }
  .mobile-mini-card{
    display:grid;
    gap:.12rem;
    padding:.78rem .85rem;
    border:1px solid rgba(234,220,199,.95);
    border-radius:18px;
    background:#fffdf8;
    color:var(--text);
  }
  .mobile-mini-card.featured{
    border-color:rgba(230,91,48,.45);
    background:#fff4e8;
  }
  .mobile-mini-card span{
    color:var(--navy);
    font-weight:850;
  }
  .mobile-mini-card strong{
    color:var(--coral-dark);
    font-size:1.05rem;
  }
  .mobile-mini-card small{
    color:var(--muted);
    line-height:1.3;
  }
  .mobile-read-more{
    display:inline-flex;
    margin-top:.85rem;
    color:var(--coral-dark);
    font-weight:850;
  }
  .mobile-work-links{
    display:grid;
    gap:.55rem;
  }
  .mobile-work-links a{
    display:grid;
    gap:.1rem;
    padding:.78rem .85rem;
    border-radius:18px;
    background:#fffdf8;
    border:1px solid rgba(234,220,199,.95);
    color:var(--navy);
    font-weight:850;
  }
  .mobile-work-links span{
    color:var(--muted);
    font-weight:650;
    font-size:.9rem;
  }
  .mobile-accordion-list{
    display:grid;
    gap:.55rem;
  }
  .mobile-accordion-list details{
    border:1px solid rgba(234,220,199,.95);
    border-radius:18px;
    background:#fffdf8;
    overflow:hidden;
  }
  .mobile-accordion-list summary{
    list-style:none;
    cursor:pointer;
    padding:.82rem .95rem;
    color:var(--navy);
    font-weight:850;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.7rem;
  }
  .mobile-accordion-list summary::-webkit-details-marker{
    display:none;
  }
  .mobile-accordion-list summary::after{
    content:"+";
    color:var(--coral-dark);
    font-size:1.25rem;
    line-height:1;
  }
  .mobile-accordion-list details[open] summary::after{
    content:"–";
  }
  .mobile-accordion-list p{
    padding:0 .95rem .9rem;
    margin:0;
    color:#566276;
    line-height:1.45;
  }
  .mobile-final-cta{
    background:linear-gradient(135deg,#fffdf7,#fff0e4);
    text-align:left;
  }
  .mobile-final-cta h2{
    font-size:1.55rem;
    margin-bottom:.65rem;
  }
  .mobile-final-cta p:not(.kicker){
    line-height:1.45;
    margin-bottom:.95rem;
  }
  .mobile-final-cta .button{
    width:100%;
  }
}

/* V1.34 Bunny popping logo set */
.hero-promo-logo{
  width:min(310px, 72vw);
  height:auto;
  margin:0 0 1rem;
  filter:drop-shadow(0 10px 16px rgba(23,48,74,.10));
}
.footer-logo-pop{
  width:230px !important;
  max-width:82vw;
  height:auto;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.24));
}
@media(max-width:760px){
  /* Keep the shortened mobile homepage no-faff: the compact header remains the functional logo. */
  .hero-promo-logo{display:none;}
  .footer-logo-pop{width:210px !important;}
}


/* V1.35: Template library cards now show a visual preview before visitors click through. */
.template-library-grid .style-choice-card{
  overflow:hidden;
}
.template-preview-img{
  display:block;
  width:100%;
  aspect-ratio:16 / 10;
  object-fit:cover;
  border-radius:18px;
  border:1px solid rgba(24,35,52,.12);
  background:#f6efe6;
  margin:0 0 1rem;
  box-shadow:0 10px 24px rgba(24,35,52,.08);
}
.template-preview-section .template-preview-img{
  aspect-ratio:16 / 9;
}
.style-choice-card:hover .template-preview-img{
  transform:translateY(-1px);
}
@media(max-width:760px){
  .template-preview-img{border-radius:16px;}
}
