/* afscopywritingstudio.com | 24th site | La Rochelle, Charente-Maritime, France
   FIRST Linen #F7F3EC + Charcoal Plum #2D2438 + Ocean Turquoise #2BBFAC!
   FIRST Bitter + Asap fonts!
   FIRST accent-bar header with 3px top line + city badge + center nav!
   FIRST asymmetric split hero (dark plum left / linen right with service cards)!
   FIRST single large testimonial carousel!
   FIRST numbered table process!
   FIRST ghost-number accordion FAQ!
   FIRST credentials/expertise about page!
   FIRST .afs-draft builder panel!
   FIRST Brief/Chapter/Manuscript pricing (writing terms)!
   FIRST Enterprise B2B services: corporate-narrative/annual-reports/investor-copy/media-relations/technical-writing/executive-comms!
   FIRST LinkedIn+Twitter+Facebook! FIRST A lettermark favicon!
   FIRST La Rochelle Charente-Maritime France! EN/FR bilingual!
   afs- CSS prefix | AFS JS */
@import url('https://fonts.googleapis.com/css2?family=Bitter:ital,wght@0,400;0,500;0,600;0,700;0,900;1,400&family=Asap:wght@300;400;500;600;700&display=swap');
:root {
  --afs-linen:#F7F3EC; --afs-card:#FDFAF5;
  --afs-plum:#2D2438; --afs-plum-l:#3D3248; --afs-plum-d:#1E1825;
  --afs-tq:#2BBFAC; --afs-tq-l:#3ECFBB; --afs-tq-d:#1A9F8E;
  --afs-amber:#E8943A;
  --afs-glow-t:rgba(43,191,172,.1); --afs-glow-td:rgba(43,191,172,.06);
  --afs-warm:#7A7060; --afs-mid:#3D3228; --afs-muted:#B0A898;
  --afs-line:#E8E4DC; --afs-line-d:rgba(255,255,255,.08);
  --afs-max:1200px;
  --afs-fh:'Bitter',Georgia,serif;
  --afs-fb:'Asap',system-ui,sans-serif;
  --afs-r:4px; --afs-r2:10px; --afs-r3:100px;
  --afs-ease:all .2s cubic-bezier(.4,0,.2,1);
  --afs-sh:0 2px 16px rgba(45,36,56,.08);
  --afs-sh2:0 20px 60px rgba(45,36,56,.18);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--afs-linen);color:var(--afs-warm);font-family:var(--afs-fb);font-size:.9rem;line-height:1.72;overflow-x:hidden;}
img{display:block;max-width:100%;}a{color:inherit;text-decoration:none;}ul{list-style:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}input,textarea,select{font-family:inherit;}
address{font-style:normal;}h1,h2,h3{font-family:var(--afs-fh);}
p{font-size:.9rem;line-height:1.78;color:var(--afs-warm);}

/* ═══ ACCENT-BAR HEADER (FIRST! 3px turquoise top + city badge + center nav) ═══ */
/* The 3px accent bar sits above the main header */
.afs-accent-bar{position:fixed;top:0;left:0;right:0;height:3px;background:var(--afs-tq);z-index:600;}
.afs-header{position:fixed;top:3px;width:100%;z-index:500;background:var(--afs-linen);border-bottom:1px solid transparent;transition:border-color .2s,box-shadow .2s;}
.afs-header.afs-hd-scroll{border-color:var(--afs-line);box-shadow:var(--afs-sh);}
.afs-hd-in{max-width:var(--afs-max);margin:0 auto;padding:0 2rem;height:61px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;}
/* Bitter logo bigger with city badge (FIRST!) */
.afs-logo{font-family:var(--afs-fh);font-size:1.2rem;font-weight:700;color:var(--afs-plum);text-decoration:none;flex-shrink:0;line-height:1.2;letter-spacing:-.01em;}
.afs-logo em{font-style:italic;color:var(--afs-tq);}
.afs-logo-wrap{display:flex;flex-direction:column;align-items:flex-start;}
.afs-logo-city{font-family:var(--afs-fb);font-size:.26rem;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--afs-muted);margin-top:.05rem;}
/* CENTERED NAV (FIRST center-between-logo-and-CTA in 24 sites!) */
.afs-nav{flex:1;display:flex;justify-content:center;align-items:center;gap:.05rem;}
.afs-nlk{font-family:var(--afs-fb);font-size:.95rem;font-weight:500;color:var(--afs-warm);padding:.2rem .45rem;text-decoration:none;border-radius:var(--afs-r);transition:var(--afs-ease);}
.afs-nlk:hover,.afs-nlk.afs-nav-on{color:var(--afs-plum);}
.afs-hd-right{display:flex;align-items:center;gap:.35rem;flex-shrink:0;}
.afs-ls-wrap{display:flex;gap:.06rem;}
.afs-ls{font-family:var(--afs-fb);font-size:.3rem;font-weight:600;color:var(--afs-muted);cursor:pointer;padding:.05rem .16rem;border:none;background:none;transition:color .14s;}
.afs-ls.afs-ls-on,.afs-ls:hover{color:var(--afs-tq);}
.afs-hd-cta{font-family:var(--afs-fb);font-size:.9rem;font-weight:600;color:white;background:var(--afs-tq);padding:.28rem .85rem;border-radius:var(--afs-r3);text-decoration:none;white-space:nowrap;transition:background .14s;}
.afs-hd-cta:hover{background:var(--afs-tq-l);}
.afs-mob-btn{display:none;color:var(--afs-plum);}
/* Mobile drawer */
.afs-mob-drawer{position:fixed;top:0;right:0;bottom:0;width:82%;max-width:320px;background:var(--afs-plum);z-index:700;transform:translateX(100%);transition:transform .3s;padding:5rem 2rem 2rem;overflow-y:auto;}
.afs-mob-drawer.afs-md-open{transform:translateX(0);}
.afs-md-close{position:absolute;top:1.2rem;right:1.2rem;color:rgba(255,255,255,.4);}
.afs-md-nav{display:flex;flex-direction:column;gap:.1rem;margin-bottom:1rem;}
.afs-md-lk{font-family:var(--afs-fb);font-size:1.1rem;color:rgba(255,255,255,.55);padding:.3rem 0;text-decoration:none;transition:color .14s;}
.afs-md-lk:hover{color:white;}
.afs-mob-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:699;opacity:0;pointer-events:none;transition:opacity .3s;}
.afs-mob-overlay.afs-ov-vis{opacity:1;pointer-events:auto;}

/* PAGE BANNER */
.afs-pg-bnr{background:var(--afs-plum);padding:6rem 2rem 3.5rem;}
.afs-pg-bnr-in{max-width:var(--afs-max);margin:0 auto;}
.afs-pg-chip{font-family:var(--afs-fb);font-size:.28rem;font-weight:600;text-transform:uppercase;letter-spacing:.38em;color:var(--afs-tq-l);display:inline-block;margin-bottom:.55rem;}
.afs-pg-bnr h1{font-family:var(--afs-fh);font-size:clamp(2rem,4.5vw,4rem);color:white;line-height:1.1;font-weight:700;}
.afs-pg-sub{font-size:.88rem;color:rgba(255,255,255,.35);margin:.5rem 0 0;max-width:60ch;line-height:1.72;}

/* ═══ HERO: Asymmetric split (FIRST! dark plum left / linen right with service cards) ═══ */
.afs-hero-shell{display:grid;grid-template-columns:1.25fr 1fr;min-height:100vh;padding-top:64px;}
/* Left: dark plum with headline */
.afs-hero-l{background:var(--afs-plum);padding:4rem 3rem 4rem 2rem;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;}
/* Decorative turquoise circle decoration */
.afs-hero-l::before{content:'';position:absolute;bottom:-100px;left:-100px;width:350px;height:350px;border-radius:50%;border:1px solid rgba(43,191,172,.08);}
.afs-hero-l::after{content:'';position:absolute;bottom:-60px;left:-60px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(43,191,172,.12);}
.afs-hz-tag{font-family:var(--afs-fb);font-size:.28rem;font-weight:600;text-transform:uppercase;letter-spacing:.38em;color:var(--afs-tq-l);display:block;margin-bottom:1.2rem;}
.afs-hz-h1{font-family:var(--afs-fh);font-size:clamp(2.2rem,4vw,4rem);color:white;line-height:1.1;font-weight:700;margin-bottom:.8rem;}
.afs-hz-sub{font-size:.9rem;color:rgba(255,255,255,.38);line-height:1.78;max-width:50ch;margin-bottom:2rem;}
.afs-hz-acts{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:3rem;}
.afs-hz-foot{border-top:1px solid rgba(255,255,255,.07);padding-top:1.5rem;display:flex;gap:2.5rem;}
.afs-hzstat-v{font-family:var(--afs-fh);font-size:1.8rem;color:white;display:block;line-height:1;font-weight:700;}
.afs-hzstat-l{font-size:.26rem;color:rgba(255,255,255,.2);font-weight:600;text-transform:uppercase;letter-spacing:.18em;}
/* Right: linen with service cards */
.afs-hero-r{background:var(--afs-linen);padding:4rem 2rem 4rem 3rem;display:flex;flex-direction:column;justify-content:center;gap:.6rem;}
.afs-hr-label{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.3em;color:var(--afs-muted);display:block;margin-bottom:.6rem;}
.afs-hr-svc{background:var(--afs-card);border:1.5px solid var(--afs-line);border-radius:var(--afs-r2);padding:.8rem 1rem;display:flex;align-items:center;gap:.8rem;text-decoration:none;transition:var(--afs-ease);}
.afs-hr-svc:hover{border-color:var(--afs-tq);box-shadow:var(--afs-sh);}
.afs-hr-ico{width:28px;height:28px;background:var(--afs-glow-t);border-radius:var(--afs-r);display:flex;align-items:center;justify-content:center;color:var(--afs-tq);flex-shrink:0;}
.afs-hr-nm{font-family:var(--afs-fh);font-size:.82rem;color:var(--afs-plum);flex:1;font-weight:600;line-height:1.3;}
.afs-hr-pr{font-size:.72rem;color:var(--afs-muted);}
.afs-hr-all{font-family:var(--afs-fb);font-size:.82rem;font-weight:600;color:var(--afs-tq);display:inline-flex;align-items:center;gap:.3rem;padding:.35rem 0;margin-top:.3rem;text-decoration:none;border-bottom:1px solid var(--afs-tq);transition:var(--afs-ease);}
.afs-hr-all:hover{color:var(--afs-tq-d);}

/* SERVICE SECTION */
.afs-svc-section{background:var(--afs-card);border-top:1px solid var(--afs-line);}
.afs-svc-in{max-width:var(--afs-max);margin:0 auto;padding:6rem 2rem;}
.afs-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;}
.afs-svc-item{border:1.5px solid var(--afs-line);border-radius:var(--afs-r2);padding:1.5rem;text-decoration:none;display:block;transition:var(--afs-ease);background:var(--afs-linen);}
.afs-svc-item:hover{border-color:var(--afs-tq);box-shadow:var(--afs-sh);}
.afs-si-ico{width:34px;height:34px;background:var(--afs-glow-t);border-radius:var(--afs-r);display:flex;align-items:center;justify-content:center;color:var(--afs-tq);margin-bottom:.6rem;}
.afs-si-nm{font-family:var(--afs-fh);font-size:.85rem;color:var(--afs-plum);display:block;margin-bottom:.2rem;font-weight:600;line-height:1.3;}
.afs-si-pr{font-family:var(--afs-fb);font-size:.66rem;font-weight:600;color:var(--afs-tq);background:var(--afs-glow-t);padding:.04rem .3rem;border-radius:var(--afs-r3);display:inline-block;margin-bottom:.35rem;}
.afs-si-tag{font-size:.78rem;color:var(--afs-warm);line-height:1.62;}

/* PROCESS: Numbered table format (FIRST!) */
.afs-proc-section{background:var(--afs-linen);padding:6rem 2rem;border-top:1px solid var(--afs-line);}
.afs-proc-in{max-width:var(--afs-max);margin:0 auto;}
.afs-proc-table{margin-top:2.5rem;border-top:2px solid var(--afs-plum);}
.afs-proc-row{display:grid;grid-template-columns:64px 180px 100px 1fr;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--afs-line);align-items:start;}
.afs-pr-num{font-family:var(--afs-fh);font-size:1.1rem;color:var(--afs-tq);font-weight:700;}
.afs-pr-phase{font-family:var(--afs-fh);font-size:.88rem;color:var(--afs-plum);font-weight:600;}
.afs-pr-dur{font-family:var(--afs-fb);font-size:.72rem;color:var(--afs-muted);background:var(--afs-card);border:1px solid var(--afs-line);padding:.15rem .55rem;border-radius:var(--afs-r3);white-space:nowrap;display:inline-block;}
.afs-pr-desc{font-size:.86rem;color:var(--afs-warm);line-height:1.72;}

/* CASES */
.afs-cases-section{background:var(--afs-plum);padding:6rem 2rem;}
.afs-cases-in{max-width:var(--afs-max);margin:0 auto;}
.afs-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem;}
.afs-case-tile{border:1px solid rgba(255,255,255,.07);border-radius:var(--afs-r2);overflow:hidden;transition:var(--afs-ease);}
.afs-case-tile:hover{border-color:rgba(43,191,172,.25);}
.afs-ct-img{height:140px;object-fit:cover;width:100%;background:rgba(255,255,255,.03);}
.afs-ct-body{padding:1.2rem;}
.afs-ct-cat{font-family:var(--afs-fb);font-size:.26rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--afs-tq-l);display:block;margin-bottom:.3rem;}
.afs-ct-result{font-family:var(--afs-fh);font-size:1.4rem;color:white;display:block;line-height:1.1;margin-bottom:.25rem;font-weight:700;}
.afs-ct-h{font-size:.82rem;font-weight:600;color:rgba(255,255,255,.5);margin-bottom:.3rem;line-height:1.5;}
.afs-ct-p{font-size:.76rem;color:rgba(255,255,255,.28);line-height:1.62;}

/* PRICING */
.afs-price-section{background:var(--afs-card);padding:6rem 2rem;border-top:1px solid var(--afs-line);}
.afs-price-in{max-width:var(--afs-max);margin:0 auto;}
.afs-price-h2{font-family:var(--afs-fh);font-size:clamp(1.8rem,4vw,3.5rem);color:var(--afs-plum);margin-bottom:.3rem;font-weight:700;}
.afs-price-sub{font-size:.86rem;color:var(--afs-warm);margin-bottom:2.5rem;}
.afs-plan-cols{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:2rem;align-items:start;}
.afs-plan-cd{border:2px solid var(--afs-line);border-radius:var(--afs-r2);overflow:hidden;background:var(--afs-linen);}
.afs-plan-cd.afs-pl-feat{border-color:var(--afs-tq);}
.afs-pk-top{padding:1.2rem;border-bottom:1px solid var(--afs-line);}
.afs-plan-cd.afs-pl-feat .afs-pk-top{background:var(--afs-plum);}
.afs-pk-badge{font-family:var(--afs-fb);font-size:.26rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--afs-warm);display:block;margin-bottom:.2rem;}
.afs-plan-cd.afs-pl-feat .afs-pk-badge{color:rgba(255,255,255,.35);}
.afs-pk-nm{font-family:var(--afs-fh);font-size:1.9rem;color:var(--afs-plum);font-weight:700;}
.afs-plan-cd.afs-pl-feat .afs-pk-nm{color:white;}
.afs-pk-tl{font-size:.72rem;color:var(--afs-warm);margin-top:.12rem;line-height:1.5;}
.afs-plan-cd.afs-pl-feat .afs-pk-tl{color:rgba(255,255,255,.3);}
.afs-pk-body{padding:1.2rem;}
.afs-pk-pr{display:flex;align-items:baseline;gap:.2rem;margin-bottom:1rem;}
.afs-pk-amt{font-family:var(--afs-fh);font-size:2.4rem;color:var(--afs-plum);font-weight:700;}
.afs-pk-pp{font-size:.66rem;color:var(--afs-warm);}
.afs-pk-rows{display:flex;flex-direction:column;gap:.26rem;margin-bottom:1.2rem;}
.afs-pk-rows li{display:flex;align-items:flex-start;gap:.35rem;font-size:.76rem;color:var(--afs-warm);}
.afs-pk-rows li svg{color:var(--afs-tq);flex-shrink:0;margin-top:.1rem;}

/* TESTIMONIALS: Single large carousel (FIRST!) */
.afs-testi-section{background:var(--afs-plum);padding:6rem 2rem;}
.afs-testi-in{max-width:800px;margin:0 auto;text-align:center;}
.afs-tf-quot{font-family:Georgia,serif;font-size:7rem;color:var(--afs-tq);opacity:.2;line-height:1;display:block;margin-bottom:-2.5rem;}
.afs-tf-q{font-family:var(--afs-fh);font-size:1.15rem;color:white;line-height:1.65;font-style:italic;margin-bottom:2rem;position:relative;z-index:1;}
.afs-tf-who{font-family:var(--afs-fh);font-size:.9rem;font-weight:700;color:var(--afs-tq-l);display:block;margin-bottom:.15rem;}
.afs-tf-role{font-size:.78rem;color:rgba(255,255,255,.3);display:block;margin-bottom:1.5rem;}
.afs-tf-nav{display:flex;align-items:center;justify-content:center;gap:1rem;}
.afs-tf-btn{width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.35);cursor:pointer;transition:var(--afs-ease);background:none;}
.afs-tf-btn:hover{border-color:var(--afs-tq-l);color:var(--afs-tq-l);}
.afs-tf-dots{display:flex;gap:.4rem;}
.afs-tf-dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.15);cursor:pointer;transition:var(--afs-ease);}
.afs-tf-dot.afs-dot-on{background:var(--afs-tq);}
.afs-tf-fade{animation:afsQfade .25s ease-in-out;}
@keyframes afsQfade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

/* FAQ: Ghost-number accordion (FIRST!) */
.afs-faq-section{background:var(--afs-linen);padding:6rem 2rem;border-top:1px solid var(--afs-line);}
.afs-faq-in{max-width:780px;margin:0 auto;}
.afs-faq-list{margin-top:2.5rem;}
.afs-faq-item{border-bottom:1px solid var(--afs-line);position:relative;overflow:hidden;}
/* Turquoise left indicator */
.afs-faq-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--afs-tq);transform:scaleY(0);transition:transform .2s;transform-origin:top;}
.afs-faq-item.afs-fi-open::before{transform:scaleY(1);}
/* Ghost number (FIRST!) */
.afs-fq-ghost{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-family:var(--afs-fh);font-size:5rem;font-weight:900;color:var(--afs-plum);opacity:.04;line-height:1;pointer-events:none;user-select:none;}
.afs-faq-hd{display:flex;align-items:flex-start;gap:.8rem;padding:1rem 1rem 1rem 1.5rem;cursor:pointer;}
.afs-faq-num{font-family:var(--afs-fh);font-size:.75rem;font-weight:700;color:var(--afs-tq);flex-shrink:0;padding-top:.3rem;letter-spacing:.05em;}
.afs-faq-item.afs-fi-open .afs-faq-num{opacity:1;}
.afs-faq-q{font-family:var(--afs-fh);font-size:.88rem;color:var(--afs-plum);flex:1;line-height:1.45;font-weight:600;}
.afs-faq-caret{flex-shrink:0;color:var(--afs-muted);margin-top:.25rem;transition:transform .2s;}
.afs-faq-item.afs-fi-open .afs-faq-caret{transform:rotate(180deg);color:var(--afs-tq);}
.afs-faq-body{max-height:0;overflow:hidden;transition:max-height .35s ease;}
.afs-faq-item.afs-fi-open .afs-faq-body{max-height:320px;}
.afs-faq-ans{font-size:.86rem;color:var(--afs-warm);line-height:1.78;padding:.5rem 1.5rem 1rem;}

/* CTA + CONTACT */
.afs-cta-wrap{background:var(--afs-tq);padding:6rem 2rem;}
.afs-cta-in{max-width:var(--afs-max);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.afs-cta-h{font-family:var(--afs-fh);font-size:clamp(1.8rem,4vw,3.2rem);color:var(--afs-plum);line-height:1.1;margin-bottom:.5rem;font-weight:700;}
.afs-cta-sub{font-size:.9rem;color:rgba(45,36,56,.6);line-height:1.78;margin-bottom:1.5rem;}
.afs-cta-form{background:var(--afs-plum);border-radius:var(--afs-r2);padding:1.8rem;}
.afs-cta-form h3{font-family:var(--afs-fh);color:white;font-size:.95rem;margin-bottom:1rem;font-weight:700;}

/* BUTTONS */
.afs-btn-tq{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--afs-fb);font-size:.9rem;font-weight:600;color:white;background:var(--afs-tq);padding:.42rem 1.2rem;border-radius:var(--afs-r3);transition:var(--afs-ease);border:none;cursor:pointer;text-decoration:none;white-space:nowrap;}
.afs-btn-tq:hover{background:var(--afs-tq-l);}
.afs-btn-pl{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--afs-fb);font-size:.9rem;font-weight:600;color:white;background:var(--afs-plum);padding:.42rem 1.2rem;border-radius:var(--afs-r3);transition:var(--afs-ease);border:none;cursor:pointer;text-decoration:none;white-space:nowrap;}
.afs-btn-pl:hover{background:var(--afs-plum-l);}
.afs-btn-out{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--afs-fb);font-size:.9rem;font-weight:600;color:white;background:transparent;padding:.4rem 1.2rem;border-radius:var(--afs-r3);border:2px solid rgba(255,255,255,.3);transition:var(--afs-ease);text-decoration:none;white-space:nowrap;}
.afs-btn-out:hover{border-color:white;}
.afs-btn-out-pl{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--afs-fb);font-size:.9rem;font-weight:600;color:var(--afs-plum);background:transparent;padding:.4rem 1.2rem;border-radius:var(--afs-r3);border:2px solid var(--afs-plum);transition:var(--afs-ease);text-decoration:none;white-space:nowrap;}
.afs-btn-out-pl:hover{background:var(--afs-plum);color:white;}

/* SERVICE PAGE */
.afs-svcpg-wrap{max-width:var(--afs-max);margin:0 auto;padding:3rem 2rem 6rem;display:grid;grid-template-columns:3fr 2fr;gap:3rem;align-items:start;}
.afs-svcpg-body h2{font-family:var(--afs-fh);font-size:.9rem;color:var(--afs-plum);margin:2rem 0 .4rem;font-weight:700;}
.afs-svcpg-body p{font-size:.88rem;color:var(--afs-warm);line-height:1.82;margin-bottom:.8rem;}
.afs-del-r{display:flex;align-items:flex-start;gap:.4rem;font-size:.86rem;color:var(--afs-mid);margin-bottom:.28rem;}
.afs-del-r svg{color:var(--afs-tq);flex-shrink:0;margin-top:.1rem;}
.afs-svc-sidebar{background:var(--afs-plum);border-radius:var(--afs-r2);overflow:hidden;position:sticky;top:5rem;}
.afs-sb-top{background:var(--afs-tq);padding:.65rem 1.2rem;}
.afs-sb-ttl{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--afs-plum);}
.afs-sb-bd{padding:1rem 1.2rem;}
.afs-sb-from{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.25);display:block;}
.afs-sb-pr{font-family:var(--afs-fh);font-size:2.8rem;color:white;display:block;line-height:1;font-weight:700;}
.afs-sb-ot{font-size:.7rem;color:rgba(255,255,255,.25);display:block;margin-bottom:.8rem;}
.afs-sb-ln{display:flex;align-items:flex-start;gap:.35rem;font-size:.76rem;color:rgba(255,255,255,.3);margin-bottom:.2rem;}
.afs-sb-ln svg{color:var(--afs-tq-l);flex-shrink:0;margin-top:.08rem;}
.afs-sb-btn{display:flex;width:100%;justify-content:center;align-items:center;gap:.4rem;font-family:var(--afs-fb);font-size:.88rem;font-weight:600;color:var(--afs-plum);background:var(--afs-tq);padding:.5rem;border-radius:var(--afs-r);border:none;cursor:pointer;transition:background .14s;margin-top:.9rem;text-decoration:none;}
.afs-sb-btn:hover{background:var(--afs-tq-l);}

/* BUILDER .afs-draft (FIRST "draft" naming!) */
.afs-build-wrap{max-width:var(--afs-max);margin:0 auto;padding:4rem 2rem 7rem;display:grid;grid-template-columns:1fr 300px;gap:4rem;align-items:start;}
.afs-bld-sec{margin-bottom:2rem;}
.afs-bld-lbl{display:block;font-family:var(--afs-fb);font-size:.28rem;font-weight:700;text-transform:uppercase;letter-spacing:.28em;color:var(--afs-warm);margin-bottom:.55rem;}
.afs-plan-opt{background:var(--afs-card);border:1.5px solid var(--afs-line);border-radius:var(--afs-r);padding:.7rem 1rem;display:flex;align-items:center;gap:.65rem;cursor:pointer;user-select:none;transition:var(--afs-ease);margin-bottom:.35rem;}
.afs-plan-opt.afs-po-on{border-color:var(--afs-tq);background:var(--afs-glow-t);}
.afs-po-radio{width:16px;height:16px;border:2px solid var(--afs-line);border-radius:50%;flex-shrink:0;transition:var(--afs-ease);}
.afs-plan-opt.afs-po-on .afs-po-radio{background:var(--afs-tq);border-color:var(--afs-tq);}
.afs-po-nm{font-family:var(--afs-fh);font-size:.85rem;color:var(--afs-warm);flex:1;font-weight:600;}
.afs-plan-opt.afs-po-on .afs-po-nm{color:var(--afs-plum);}
.afs-po-pr{font-size:.86rem;font-weight:600;color:var(--afs-mid);}
.afs-addon-opt{background:var(--afs-card);border:1.5px solid var(--afs-line);border-radius:var(--afs-r);padding:.55rem 1rem;display:flex;align-items:center;gap:.6rem;cursor:pointer;user-select:none;transition:var(--afs-ease);margin-bottom:.3rem;}
.afs-addon-opt.afs-ao-on{border-color:var(--afs-tq);background:var(--afs-glow-t);}
.afs-ao-chk{width:14px;height:14px;border:2px solid var(--afs-line);border-radius:3px;flex-shrink:0;transition:var(--afs-ease);}
.afs-addon-opt.afs-ao-on .afs-ao-chk{background:var(--afs-tq);border-color:var(--afs-tq);}
.afs-ao-nm{font-size:.82rem;color:var(--afs-warm);flex:1;}
.afs-addon-opt.afs-ao-on .afs-ao-nm{color:var(--afs-plum);font-weight:600;}
.afs-ao-pr{font-size:.76rem;color:var(--afs-warm);}
.afs-hrs-panel{background:var(--afs-card);border:1.5px solid var(--afs-line);border-radius:var(--afs-r);padding:1rem;}
.afs-hrs-rng{-webkit-appearance:none;width:100%;height:3px;background:var(--afs-line);border-radius:2px;cursor:pointer;}
.afs-hrs-rng::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--afs-tq);cursor:pointer;}
/* .afs-draft (FIRST "draft" naming in 24-site series!) */
.afs-draft{background:var(--afs-plum);border-radius:var(--afs-r2);overflow:hidden;position:sticky;top:5rem;}
/* Draft-style turquoise header */
.afs-draft-hd{background:var(--afs-tq);padding:.6rem 1.2rem;}
.afs-draft-ttl{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:var(--afs-plum);}
.afs-draft-bd{padding:.5rem 1.2rem;min-height:80px;}
.afs-draft-ln{display:flex;justify-content:space-between;font-size:.76rem;color:rgba(255,255,255,.3);margin-bottom:.22rem;}
.afs-draft-v{font-size:.86rem;color:rgba(255,255,255,.8);}
.afs-draft-sep{border:none;border-top:1px solid rgba(255,255,255,.07);margin:.25rem 1.2rem;}
.afs-draft-total{display:flex;justify-content:space-between;align-items:flex-end;padding:.2rem 1.2rem .4rem;}
.afs-draft-tl{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.2);}
.afs-draft-tv{font-family:var(--afs-fh);font-size:2.6rem;color:var(--afs-tq-l);font-weight:700;}
.afs-draft-ft{padding:.6rem 1.2rem;border-top:1px solid rgba(255,255,255,.07);}
.afs-draft-go{display:block;width:100%;background:var(--afs-tq);color:var(--afs-plum);font-family:var(--afs-fb);font-size:.88rem;font-weight:700;padding:.5rem;border-radius:var(--afs-r);border:none;cursor:pointer;transition:background .14s;}
.afs-draft-go:hover:not(:disabled){background:var(--afs-tq-l);}
.afs-draft-go:disabled{opacity:.2;cursor:not-allowed;}

/* CHECKOUT + FORMS + LEGAL */
.afs-co-wrap{max-width:760px;margin:0 auto;padding:3rem 2rem 7rem;}
.afs-co-sum{border:2px solid var(--afs-tq);border-radius:var(--afs-r2);overflow:hidden;margin-bottom:2rem;}
.afs-cs-top{background:var(--afs-tq);padding:.6rem 1.2rem;}
.afs-cs-top span{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--afs-plum);}
.afs-cs-bd{padding:.5rem 1.2rem;}
.afs-cs-ln{display:flex;justify-content:space-between;font-size:.82rem;color:var(--afs-warm);padding:.26rem 0;border-bottom:1px solid var(--afs-line);}
.afs-cs-total{display:flex;justify-content:space-between;align-items:center;padding:.55rem 0 .1rem;}
.afs-cs-total span:last-child{font-family:var(--afs-fh);font-size:2rem;color:var(--afs-plum);font-weight:700;}
.afs-fg{margin-bottom:.65rem;}
.afs-fl{display:block;font-family:var(--afs-fb);font-size:.3rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--afs-warm);margin-bottom:.2rem;}
.afs-fi{width:100%;background:var(--afs-card);border:1.5px solid var(--afs-line);border-radius:var(--afs-r);padding:.6rem .9rem;color:var(--afs-plum);font-size:.9rem;transition:border-color .14s;}
.afs-fi:focus{outline:none;border-color:var(--afs-tq);box-shadow:0 0 0 3px var(--afs-glow-t);}
.afs-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem;color:var(--afs-warm);margin:1rem 0;line-height:1.6;}
.afs-agree input{margin-top:.14rem;accent-color:var(--afs-tq);}
.afs-agree a{color:var(--afs-tq);}
.afs-legal-pg{max-width:800px;margin:0 auto;padding:4rem 2rem 7rem;}
.afs-legal-eff{display:inline-block;font-size:.72rem;color:var(--afs-warm);background:var(--afs-card);border:1px solid var(--afs-line);padding:.18rem .65rem;border-radius:var(--afs-r3);margin-bottom:1.5rem;}
.afs-legal-pg h2{font-family:var(--afs-fh);font-size:.9rem;color:var(--afs-plum);margin:2.5rem 0 .45rem;font-weight:700;}
.afs-legal-pg p,.afs-legal-pg li{font-size:.88rem;color:var(--afs-warm);line-height:1.78;margin-bottom:.85rem;}
.afs-legal-pg ul{padding-left:1.4rem;margin:.5rem 0;}
.afs-legal-pg li{list-style:disc;}
.afs-legal-pg a{color:var(--afs-tq);}

/* ABOUT: Credentials/expertise format (FIRST!) */
.afs-cred-section{background:var(--afs-linen);padding:6rem 2rem;}
.afs-cred-in{max-width:var(--afs-max);margin:0 auto;display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:start;}
.afs-cred-table{border-collapse:collapse;width:100%;}
.afs-cred-row{display:grid;grid-template-columns:140px 1fr;border-bottom:1px solid var(--afs-line);padding:.7rem 0;}
.afs-cred-label{font-family:var(--afs-fb);font-size:.28rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--afs-muted);}
.afs-cred-val{font-family:var(--afs-fh);font-size:.88rem;color:var(--afs-plum);font-weight:500;line-height:1.45;}

/* FOOTER (LI+TW+FB FIRST!) */
.afs-footer{background:var(--afs-plum-d);}
.afs-footer-in{max-width:var(--afs-max);margin:0 auto;padding:3rem 2rem 2rem;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:2rem;border-bottom:1px solid rgba(255,255,255,.06);}
.afs-ftr-brand{font-family:var(--afs-fh);font-size:1.55rem;color:white;display:block;margin-bottom:.4rem;text-decoration:none;font-weight:700;}
.afs-ftr-brand em{font-style:italic;color:var(--afs-tq-l);}
.afs-ftr-tag{font-size:.7rem;color:rgba(255,255,255,.2);line-height:1.65;margin-bottom:.7rem;}
/* LI+TW+FB (FIRST LI+TW+FB in 24-site series!) */
.afs-ftr-socs{display:flex;gap:.4rem;margin-bottom:.7rem;}
.afs-ftr-soc{width:30px;height:30px;border:1px solid rgba(255,255,255,.1);border-radius:var(--afs-r);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.25);transition:var(--afs-ease);text-decoration:none;}
.afs-ftr-soc:hover{border-color:var(--afs-tq-l);color:var(--afs-tq-l);}
.afs-ftr-col-h{font-family:var(--afs-fb);font-size:.26rem;font-weight:700;text-transform:uppercase;letter-spacing:.28em;color:rgba(255,255,255,.16);margin-bottom:.65rem;}
.afs-ftr-nav{display:flex;flex-direction:column;gap:.2rem;}
.afs-ftr-nav a{font-size:.7rem;color:rgba(255,255,255,.2);transition:color .14s;text-decoration:none;}
.afs-ftr-nav a:hover{color:var(--afs-tq-l);}
.afs-ftr-ct a{display:flex;align-items:flex-start;gap:.3rem;font-size:.68rem;color:rgba(255,255,255,.2);transition:color .14s;text-decoration:none;margin-bottom:.22rem;}
.afs-ftr-ct a:hover{color:var(--afs-tq-l);}
.afs-footer-base{max-width:var(--afs-max);margin:0 auto;padding:.65rem 2rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;}
.afs-ftr-copy{font-size:.6rem;color:rgba(255,255,255,.12);}
.afs-ftr-legal{display:flex;gap:1rem;flex-wrap:wrap;}
.afs-ftr-legal a{font-size:.6rem;color:rgba(255,255,255,.12);transition:color .14s;text-decoration:none;}
.afs-ftr-legal a:hover{color:var(--afs-tq-l);}

/* COOKIE + CHAT */
.afs-ck-bar{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--afs-plum-d);border-top:2px solid var(--afs-tq);padding:.9rem 2rem;display:none;align-items:center;gap:2rem;justify-content:space-between;flex-wrap:wrap;}
.afs-ck-bar p{font-size:.8rem;color:rgba(255,255,255,.3);margin:0;}
.afs-ck-bar a{color:var(--afs-tq-l);}
.afs-ck-btns{display:flex;gap:.5rem;flex-shrink:0;}
.afs-ck-yes{background:var(--afs-tq);color:var(--afs-plum);font-family:var(--afs-fb);font-size:.88rem;font-weight:700;padding:.28rem .85rem;border-radius:var(--afs-r3);cursor:pointer;border:none;}
.afs-ck-no{background:transparent;color:rgba(255,255,255,.25);font-family:var(--afs-fb);font-size:.82rem;padding:.26rem .85rem;border:1px solid rgba(255,255,255,.1);border-radius:var(--afs-r3);cursor:pointer;}
.afs-chat-fab{position:fixed;bottom:4.5rem;right:1.5rem;z-index:9990;width:50px;height:50px;background:var(--afs-tq);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;box-shadow:var(--afs-sh2);transition:var(--afs-ease);color:var(--afs-plum);}
.afs-chat-fab:hover{background:var(--afs-tq-l);transform:scale(1.07);}
.afs-chatpop{position:fixed;bottom:7rem;right:1.5rem;z-index:9989;width:290px;background:white;border:1.5px solid var(--afs-line);border-radius:var(--afs-r2);box-shadow:var(--afs-sh2);opacity:0;pointer-events:none;transform:translateY(10px) scale(.97);transition:opacity .2s,transform .22s;overflow:hidden;}
.afs-chatpop.afs-cp-vis{opacity:1;pointer-events:auto;transform:none;}
.afs-chat-hd{background:var(--afs-plum);padding:.8rem 1.1rem;}
.afs-chat-nm{font-family:var(--afs-fh);font-size:.95rem;color:white;font-weight:700;}
.afs-chat-nm em{color:var(--afs-tq-l);font-style:normal;}
.afs-chat-bd{padding:.8rem 1rem;}
.afs-chat-inp{width:100%;background:var(--afs-linen);border:1.5px solid var(--afs-line);border-radius:var(--afs-r);padding:.5rem .8rem;font-size:.84rem;color:var(--afs-plum);margin-bottom:.35rem;resize:none;transition:border-color .14s;}
.afs-chat-inp:focus{outline:none;border-color:var(--afs-tq);}
.afs-chat-send{width:100%;background:var(--afs-tq);color:var(--afs-plum);font-family:var(--afs-fb);font-size:.9rem;font-weight:700;padding:.5rem;border-radius:var(--afs-r);border:none;cursor:pointer;transition:background .14s;}
.afs-chat-send:hover{background:var(--afs-tq-l);}
.afs-chat-done{display:none;text-align:center;padding:.9rem;}
/* MISC */
.afs-reveal{opacity:0;transform:translateY(12px);transition:opacity .4s,transform .4s;}
.afs-reveal.afs-in{opacity:1;transform:none;}
.afs-result-pg{min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem;flex-direction:column;gap:1.5rem;}
.afs-sec-hd h2{font-family:var(--afs-fh);font-size:clamp(1.8rem,4vw,3.2rem);color:var(--afs-plum);font-weight:700;}
.afs-sec-hd-w h2{color:white;}
.afs-sec-sub{font-size:.86rem;color:var(--afs-warm);margin-top:.35rem;max-width:58ch;}
.afs-sec-hd-w .afs-sec-sub{color:rgba(255,255,255,.35);}
/* RESPONSIVE */
@media(max-width:960px){
  .afs-nav{display:none;} .afs-mob-btn{display:flex;}
  .afs-hero-shell{grid-template-columns:1fr;min-height:auto;}
  .afs-hero-l,.afs-hero-r{padding:3rem 1.5rem;}
  .afs-svc-grid,.afs-case-grid{grid-template-columns:repeat(2,1fr);}
  .afs-plan-cols,.afs-cta-in,.afs-cred-in{grid-template-columns:1fr;}
  .afs-proc-row{grid-template-columns:50px 1fr;gap:1rem;}
  .afs-pr-phase,.afs-pr-dur{grid-column:2;}
  .afs-footer-in{grid-template-columns:1fr 1fr 1fr;}
  .afs-svcpg-wrap,.afs-build-wrap{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .afs-svc-grid,.afs-case-grid{grid-template-columns:1fr;}
  .afs-footer-in{grid-template-columns:1fr 1fr;}
  .afs-proc-row{grid-template-columns:1fr;} .afs-pr-num{display:none;}
}
