/* copywritingcastle.com -- style.css
   Theme: Editorial publishing house, copywriting agency, Capriglia Irpina Avellino Campania
   Nav: SPLIT CENTERED (3-col: left links | center logo | right links+CTA) -- UNIQUE in series
   Hero: 3-COLUMN EDITORIAL NEWSPAPER GRID -- UNIQUE
   Services: STAGGERED ALTERNATING ROWS -- UNIQUE
   Process: NUMBERED CLICK ACCORDION -- UNIQUE
   Testimonials: LARGE ROTATING SINGLE QUOTE -- UNIQUE
   Pricing: 3-TIER CARDS WITH FEATURE MATRIX -- UNIQUE
   Footer: 5-COLUMN WIDE -- UNIQUE
   Fonts: Playfair Display (headings) + Lato (body) -- UNIQUE in series
   Palette: #152D25 forest green + #FAF7F0 ivory + #C9922B amber gold -- UNIQUE
   CSS prefix: cc-
   ---------------------------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,700;1,400;1,700&family=Lato:wght@300;400;700&display=swap');

:root {
  --cc-ivy:    #FAF7F0;
  --cc-ivy2:   #F2EDE2;
  --cc-ivy3:   #E8E0D0;
  --cc-green:  #152D25;
  --cc-grn2:   #1D3D32;
  --cc-grn3:   #0E1E19;
  --cc-gold:   #C9922B;
  --cc-gld2:   #A77520;
  --cc-gbg:    rgba(201,146,43,.08);
  --cc-gbg2:   rgba(201,146,43,.16);
  --cc-ink:    #1A1008;
  --cc-muted:  #5C5040;
  --cc-stone:  #9E8E78;
  --cc-edge:   rgba(21,45,37,.1);
  --cc-edge2:  rgba(21,45,37,.2);
  --cc-max:    1160px;
  --cc-ease:   all 0.22s cubic-bezier(.4,0,.2,1);
  --cc-fh:     'Playfair Display', Georgia, serif;
  --cc-fb:     'Lato', system-ui, sans-serif;
  --cc-r:      3px;
  --cc-r2:     10px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--cc-ivy);color:var(--cc-ink);font-family:var(--cc-fb);font-size:1rem;line-height:1.7;overflow-x:hidden;}
img,svg{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;font-size:1rem;}
address{font-style:normal;}
h1,h2,h3,h4{font-family:var(--cc-fh);}
h1{font-size:clamp(2.6rem,5vw,5.5rem);font-weight:400;line-height:1.06;letter-spacing:-.02em;}
h2{font-size:clamp(1.7rem,2.8vw,2.8rem);font-weight:400;line-height:1.12;letter-spacing:-.015em;}
h3{font-size:clamp(1rem,1.5vw,1.35rem);font-weight:400;line-height:1.2;}
h4{font-size:.85rem;font-weight:700;font-family:var(--cc-fb);letter-spacing:.05em;text-transform:uppercase;}
p{font-size:.9rem;line-height:1.82;color:var(--cc-muted);}

.cc-shell{max-width:var(--cc-max);margin:0 auto;padding:0 2.5rem;}
.cc-seg{padding:7rem 0;}
.cc-tag{display:inline-block;font-family:var(--cc-fb);font-size:.52rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--cc-gold);margin-bottom:.6rem;}

/* ---- BUTTONS ---- */
.cc-btn-green{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--cc-fb);font-size:.84rem;font-weight:700;background:var(--cc-green);color:var(--cc-ivy);padding:.78rem 1.8rem;border-radius:var(--cc-r);transition:var(--cc-ease);white-space:nowrap;border:none;cursor:pointer;}
.cc-btn-green:hover{background:var(--cc-grn3);transform:translateY(-1px);}
.cc-btn-gold{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--cc-fb);font-size:.84rem;font-weight:700;background:var(--cc-gold);color:white;padding:.78rem 1.8rem;border-radius:var(--cc-r);transition:var(--cc-ease);white-space:nowrap;border:none;cursor:pointer;}
.cc-btn-gold:hover{background:var(--cc-gld2);}
.cc-btn-outline{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--cc-fb);font-size:.84rem;font-weight:700;color:var(--cc-green);padding:.76rem 1.75rem;border-radius:var(--cc-r);border:2px solid var(--cc-green);background:transparent;transition:var(--cc-ease);white-space:nowrap;}
.cc-btn-outline:hover{background:var(--cc-green);color:var(--cc-ivy);}
.cc-btn-ghost-dark{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--cc-fb);font-size:.84rem;font-weight:700;color:var(--cc-ivy);padding:.76rem 1.75rem;border-radius:var(--cc-r);border:2px solid rgba(250,247,240,.35);background:transparent;transition:var(--cc-ease);white-space:nowrap;}
.cc-btn-ghost-dark:hover{border-color:var(--cc-ivy);background:rgba(250,247,240,.1);}

/* ---- SPLIT CENTERED NAVIGATION (UNIQUE) ---- */
/* 3-column: left nav | center logo | right nav+CTA */
.cc-header{
  position:fixed;top:0;left:0;right:0;z-index:900;
  background:var(--cc-ivy);
  border-bottom:1.5px solid var(--cc-edge);
  box-shadow:0 1px 12px rgba(21,45,37,.05);
  transition:box-shadow .25s;
}
.cc-header.cc-scrolled{box-shadow:0 2px 20px rgba(21,45,37,.08);}
body{padding-top:72px;}
.cc-nav-shell{
  max-width:var(--cc-max);margin:0 auto;padding:0 2rem;
  height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;
}
.cc-nav-left{display:flex;align-items:center;gap:.25rem;}
.cc-nav-center{display:flex;align-items:center;gap:.5rem;text-decoration:none;justify-content:center;}
.cc-nav-center img{height:26px;width:auto;}
.cc-nav-brand-nm{font-family:var(--cc-fb);font-size:.85rem;font-weight:700;color:var(--cc-green);letter-spacing:-.01em;}
.cc-nav-right{display:flex;align-items:center;gap:.25rem;justify-content:flex-end;}
.cc-nl{font-family:var(--cc-fb);font-size:.93rem;font-weight:400;color:var(--cc-muted);padding:.28rem .65rem;border-radius:var(--cc-r);transition:color .2s;white-space:nowrap;}
.cc-nl:hover,.cc-nl.cc-nav-on{color:var(--cc-green);}
.cc-nav-cta{font-family:var(--cc-fb);font-size:.78rem;font-weight:700;background:var(--cc-green);color:var(--cc-ivy);padding:.38rem 1rem;border-radius:var(--cc-r);transition:var(--cc-ease);white-space:nowrap;margin-left:.5rem;}
.cc-nav-cta:hover{background:var(--cc-grn3);}
.cc-nav-lang{font-family:var(--cc-fb);font-size:.62rem;font-weight:700;letter-spacing:.07em;color:var(--cc-stone);border:1.5px solid var(--cc-edge);padding:.12rem .38rem;border-radius:2px;transition:var(--cc-ease);}
.cc-nav-lang:hover{color:var(--cc-green);border-color:var(--cc-edge2);}
/* Mobile */
.cc-nav-burger{display:none;width:32px;height:32px;align-items:center;justify-content:center;cursor:pointer;color:var(--cc-green);}
.cc-mob-drawer{position:fixed;inset:0;background:var(--cc-ivy);z-index:950;padding:5rem 2rem 2rem;overflow-y:auto;transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);}
.cc-mob-drawer.cc-mob-open{transform:translateX(0);}
.cc-mob-xbtn{position:absolute;top:1.3rem;right:1.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--cc-green);}
.cc-mob-lnk{display:block;font-family:var(--cc-fh);font-size:1.5rem;color:var(--cc-green);padding:.5rem 0;border-bottom:1px solid var(--cc-edge);}
.cc-mob-lnk:hover{color:var(--cc-gold);}

/* ---- 3-COLUMN EDITORIAL HERO (UNIQUE) ---- */
/* Newspaper grid: narrow side | wide center with image | narrow side */
.cc-editorial{background:var(--cc-ivy);padding:4rem 0 0;}
.cc-editorial-grid{
  max-width:var(--cc-max);margin:0 auto;padding:0 2.5rem;
  display:grid;grid-template-columns:220px 1fr 200px;gap:3rem;align-items:start;
}
/* Left column: stats + small text */
.cc-ed-left{}
.cc-ed-stat{margin-bottom:2rem;}
.cc-ed-stat-n{font-family:var(--cc-fh);font-size:3.2rem;color:var(--cc-green);line-height:1;font-weight:400;}
.cc-ed-stat-l{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--cc-stone);margin-top:.18rem;}
.cc-ed-rule{width:100%;height:1.5px;background:var(--cc-green);margin:1.5rem 0;}
.cc-ed-since{font-family:var(--cc-fb);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--cc-stone);}
/* Center: main headline, image, CTA */
.cc-ed-center{border-left:1.5px solid var(--cc-edge);border-right:1.5px solid var(--cc-edge);padding:0 2.5rem;}
.cc-ed-eyebrow{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.24em;color:var(--cc-gold);margin-bottom:.9rem;}
.cc-ed-h1{font-family:var(--cc-fh);font-size:clamp(2.8rem,5.5vw,5.5rem);color:var(--cc-green);font-weight:400;line-height:1.04;letter-spacing:-.025em;margin-bottom:1.1rem;}
.cc-ed-h1 em{font-style:italic;color:var(--cc-gold);}
.cc-ed-sub{font-family:var(--cc-fb);font-size:.9rem;color:var(--cc-muted);max-width:46ch;margin-bottom:2rem;line-height:1.8;}
.cc-ed-acts{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;}
.cc-ed-img{margin-top:2.5rem;border-radius:var(--cc-r2);overflow:hidden;max-height:380px;}
.cc-ed-img img{width:100%;height:100%;object-fit:cover;display:block;}
/* Right column: service list */
.cc-ed-right{}
.cc-ed-right-h{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--cc-stone);margin-bottom:1rem;}
.cc-ed-svc-item{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.65rem;padding-bottom:.65rem;border-bottom:1px solid var(--cc-edge);}
.cc-ed-svc-item:last-child{border-bottom:none;}
.cc-ed-svc-ico{width:22px;height:22px;border-radius:2px;background:var(--cc-gbg);color:var(--cc-gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.1rem;}
.cc-ed-svc-nm{font-family:var(--cc-fb);font-size:.8rem;font-weight:700;color:var(--cc-green);line-height:1.3;}
.cc-ed-svc-pr{font-family:var(--cc-fh);font-size:.7rem;color:var(--cc-stone);}
/* Bottom ticker strip */
.cc-ed-ticker{background:var(--cc-green);margin-top:3rem;overflow:hidden;}
.cc-ed-ticker-inner{display:flex;white-space:nowrap;animation:cc-scroll 28s linear infinite;padding:.75rem 0;}
.cc-ed-ticker-item{font-family:var(--cc-fb);font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:rgba(250,247,240,.35);padding:0 2.5rem;}
.cc-ed-ticker-item span{color:var(--cc-gold);}
@keyframes cc-scroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ---- SERVICES: STAGGERED ALTERNATING ROWS ---- */
.cc-svc-alt-sec{background:var(--cc-ivy);}
.cc-svc-alt-row{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1.5px solid var(--cc-edge);
  min-height:380px;overflow:hidden;
}
.cc-svc-alt-row.cc-row-rev{}
.cc-svc-alt-img{overflow:hidden;position:relative;}
.cc-svc-alt-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s;min-height:380px;}
.cc-svc-alt-row:hover .cc-svc-alt-img img{transform:scale(1.04);}
.cc-svc-alt-body{padding:3.5rem;display:flex;flex-direction:column;justify-content:center;background:var(--cc-ivy);position:relative;}
.cc-svc-alt-row.cc-row-rev .cc-svc-alt-img{order:2;}
.cc-svc-alt-row.cc-row-rev .cc-svc-alt-body{order:1;background:var(--cc-ivy2);}
.cc-svc-alt-ico{width:36px;height:36px;border-radius:var(--cc-r);background:var(--cc-gbg);color:var(--cc-gold);display:flex;align-items:center;justify-content:center;margin-bottom:.85rem;}
.cc-svc-alt-nm{font-family:var(--cc-fh);font-size:1.35rem;color:var(--cc-green);margin-bottom:.5rem;}
.cc-svc-alt-tg{font-size:.85rem;color:var(--cc-muted);line-height:1.78;margin-bottom:1.5rem;}
.cc-svc-alt-pr{font-family:var(--cc-fh);font-size:.85rem;color:var(--cc-gold);margin-bottom:1.1rem;}
.cc-svc-alt-lnk{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--cc-fb);font-size:.78rem;font-weight:700;color:var(--cc-green);text-transform:uppercase;letter-spacing:.08em;transition:gap .2s;}
.cc-svc-alt-lnk:hover{gap:.55rem;}

/* ---- CASES ---- */
.cc-cases-sec{background:var(--cc-ivy2);}
.cc-cases-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.cc-case-block{background:var(--cc-ivy);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r2);overflow:hidden;transition:var(--cc-ease);}
.cc-case-block:hover{box-shadow:0 8px 28px rgba(21,45,37,.1);}
.cc-case-img{overflow:hidden;height:200px;}
.cc-case-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s;}
.cc-case-block:hover .cc-case-img img{transform:scale(1.04);}
.cc-case-body{padding:1.65rem;}
.cc-case-type{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--cc-gold);margin-bottom:.45rem;}
.cc-case-nm{font-family:var(--cc-fh);font-size:1.15rem;color:var(--cc-green);margin-bottom:.5rem;}
.cc-case-p{font-size:.8rem;color:var(--cc-muted);line-height:1.72;}
.cc-case-tags{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.85rem;}
.cc-case-badge{font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:1.5px solid var(--cc-edge);color:var(--cc-stone);padding:.1rem .4rem;border-radius:2px;}

/* ---- PROCESS: NUMBERED CLICK ACCORDION (UNIQUE) ---- */
.cc-proc-sec{background:var(--cc-green);}
.cc-proc-head{margin-bottom:3.5rem;}
.cc-proc-head h2{color:rgba(250,247,240,.9);}
.cc-proc-head p{color:rgba(250,247,240,.35);}
.cc-proc-list{}
.cc-proc-item{border-top:1px solid rgba(250,247,240,.1);}
.cc-proc-item:last-child{border-bottom:1px solid rgba(250,247,240,.1);}
.cc-proc-btn{
  width:100%;display:flex;align-items:center;gap:1.5rem;
  padding:1.25rem 0;cursor:pointer;
  transition:color .2s;
}
.cc-proc-num{font-family:var(--cc-fh);font-size:1.6rem;color:rgba(201,146,43,.3);font-weight:400;min-width:2.5rem;transition:color .2s;}
.cc-proc-item.cc-proc-on .cc-proc-num{color:var(--cc-gold);}
.cc-proc-h{font-family:var(--cc-fh);font-size:1.05rem;color:rgba(250,247,240,.65);flex:1;text-align:left;transition:color .2s;}
.cc-proc-item.cc-proc-on .cc-proc-h{color:rgba(250,247,240,.95);}
.cc-proc-ico{color:rgba(250,247,240,.2);transition:color .2s,transform .25s;}
.cc-proc-item.cc-proc-on .cc-proc-ico{color:var(--cc-gold);transform:rotate(180deg);}
.cc-proc-body{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.cc-proc-item.cc-proc-on .cc-proc-body{max-height:350px;}
.cc-proc-content{
  display:grid;grid-template-columns:1fr 1fr;gap:2rem;
  padding:1.5rem 0 2rem 4rem;align-items:center;
}
.cc-proc-txt{font-size:.85rem;color:rgba(250,247,240,.38);line-height:1.82;}
.cc-proc-img-wrap{border-radius:var(--cc-r2);overflow:hidden;max-height:180px;}
.cc-proc-img-wrap img{width:100%;height:100%;object-fit:cover;filter:brightness(.5);}

/* ---- TESTIMONIALS: LARGE ROTATING QUOTE (UNIQUE) ---- */
.cc-voices-sec{background:var(--cc-ivy2);text-align:center;}
.cc-voices-carousel{position:relative;overflow:hidden;min-height:280px;}
.cc-voice-slide{
  position:absolute;inset:0;opacity:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:3rem;
  transition:opacity .55s ease;
}
.cc-voice-slide.cc-vs-active{opacity:1;position:relative;}
.cc-voice-qico{color:var(--cc-gold);opacity:.3;margin-bottom:1rem;}
.cc-voice-stars{display:flex;gap:.2rem;color:var(--cc-gold);margin-bottom:.85rem;justify-content:center;}
.cc-voice-q{font-family:var(--cc-fh);font-style:italic;font-size:clamp(1.05rem,2vw,1.45rem);color:var(--cc-green);max-width:56ch;margin:0 auto 1.5rem;line-height:1.55;}
.cc-voice-who{font-family:var(--cc-fb);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--cc-stone);}
.cc-voice-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem;}
.cc-vdot{width:8px;height:8px;border-radius:50%;background:var(--cc-edge2);cursor:pointer;transition:background .2s;}
.cc-vdot.cc-vd-on{background:var(--cc-gold);}

/* ---- PRICING: 3-TIER CARDS ---- */
.cc-pricing-sec{background:var(--cc-ivy);}
.cc-pkg-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:start;}
.cc-pkg-card{border-radius:var(--cc-r2);border:1.5px solid var(--cc-edge);padding:2rem;transition:var(--cc-ease);background:var(--cc-ivy);}
.cc-pkg-card:hover{border-color:var(--cc-edge2);box-shadow:0 8px 28px rgba(21,45,37,.07);}
.cc-pkg-card.cc-feat{background:var(--cc-green);border-color:transparent;transform:scale(1.02);}
.cc-pkg-card.cc-feat h3{color:rgba(250,247,240,.9);}
.cc-pkg-card.cc-feat p{color:rgba(250,247,240,.35);}
.cc-pkg-card.cc-feat .cc-pkg-price{color:var(--cc-gold);}
.cc-pkg-badge{display:inline-flex;font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;background:var(--cc-gbg);color:var(--cc-gold);padding:.1rem .45rem;border-radius:100px;margin-bottom:.6rem;border:1px solid var(--cc-gbg2);}
.cc-pkg-nm{font-family:var(--cc-fh);font-size:1.25rem;margin-bottom:.2rem;}
.cc-pkg-sub{font-size:.75rem;color:var(--cc-muted);margin-bottom:1.1rem;}
.cc-pkg-price{font-family:var(--cc-fh);font-size:2.4rem;color:var(--cc-green);line-height:1;}
.cc-pkg-unit{font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--cc-stone);margin:.12rem 0 1.25rem;}
.cc-pkg-inc{display:flex;flex-direction:column;gap:.32rem;margin-bottom:1.6rem;}
.cc-pkg-inc li{font-size:.76rem;color:var(--cc-muted);display:flex;align-items:flex-start;gap:.4rem;}
.cc-pkg-inc li::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--cc-gold);flex-shrink:0;margin-top:.45rem;}
.cc-feat .cc-pkg-inc li::before{background:var(--cc-gold);}
.cc-feat .cc-pkg-inc li{color:rgba(250,247,240,.38);}
.cc-pkg-cta{display:block;text-align:center;font-family:var(--cc-fb);font-size:.82rem;font-weight:700;padding:.72rem;border-radius:var(--cc-r);transition:var(--cc-ease);}
.cc-pkgcta-outline{border:2px solid var(--cc-edge2);color:var(--cc-muted);}
.cc-pkgcta-outline:hover{border-color:var(--cc-green);color:var(--cc-green);}
.cc-pkgcta-gold{background:var(--cc-gold);color:white;}
.cc-pkgcta-gold:hover{background:var(--cc-gld2);}

/* ---- FAQ: 2-COLUMN ---- */
.cc-faq-sec{background:var(--cc-ivy2);}
.cc-faq-2col{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start;}
.cc-faq-item{margin-bottom:1.5rem;}
.cc-faq-q{font-family:var(--cc-fh);font-size:.95rem;color:var(--cc-green);margin-bottom:.5rem;}
.cc-faq-a{font-size:.84rem;color:var(--cc-muted);line-height:1.8;}

/* ---- CTA BAND ---- */
.cc-cta-band{background:var(--cc-green);}
.cc-cta-inner{max-width:620px;margin:0 auto;text-align:center;padding:6.5rem 2.5rem;}
.cc-cta-inner h2{font-family:var(--cc-fh);font-style:italic;color:rgba(250,247,240,.9);font-size:clamp(2rem,4vw,3.2rem);margin-bottom:.75rem;}
.cc-cta-inner p{color:rgba(250,247,240,.35);margin-bottom:2.5rem;}
.cc-cta-acts{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;}

/* ---- PAGE CROWN ---- */
.cc-crown{background:var(--cc-green);padding:5.5rem 0 4rem;border-bottom:1.5px solid rgba(250,247,240,.06);}
.cc-crown-inner{max-width:var(--cc-max);margin:0 auto;padding:0 2.5rem;text-align:center;}
.cc-crown-tag{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--cc-fb);font-size:.52rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--cc-gold);background:var(--cc-gbg);border:1px solid var(--cc-gbg2);padding:.2rem .65rem;border-radius:2px;margin-bottom:1.1rem;}
.cc-crown h1{color:rgba(250,247,240,.92);max-width:22ch;margin:0 auto;}
.cc-crown-sub{font-family:var(--cc-fb);font-size:.88rem;color:rgba(250,247,240,.28);max-width:50ch;margin:.65rem auto 0;}

/* ---- SERVICE PAGE ---- */
.cc-svcp-wrap{max-width:var(--cc-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 270px;gap:5rem;align-items:start;}
.cc-svcp-body h2{font-family:var(--cc-fh);font-size:1.5rem;color:var(--cc-green);margin:2.5rem 0 .85rem;}
.cc-svcp-body p{margin-bottom:1rem;}
.cc-svcp-inc{display:flex;flex-direction:column;gap:.42rem;margin-bottom:2rem;}
.cc-svcp-li{display:flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--cc-ink);}
.cc-svcp-li svg{color:var(--cc-gold);flex-shrink:0;}
.cc-svcp-del-box{background:var(--cc-ivy2);border-radius:var(--cc-r2);padding:1.35rem;border:1.5px solid var(--cc-edge);margin-bottom:1.5rem;}
.cc-svcp-note{background:var(--cc-gbg);border-left:3px solid var(--cc-gold);padding:1rem 1.2rem;border-radius:0 var(--cc-r) var(--cc-r) 0;font-size:.84rem;color:var(--cc-ink);line-height:1.7;}
.cc-svcp-aside{position:sticky;top:1.5rem;}
.cc-aside-panel{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r2);overflow:hidden;margin-bottom:1rem;}
.cc-aside-img img{width:100%;height:160px;object-fit:cover;display:block;}
.cc-aside-meta{padding:1.35rem;}
.cc-aside-nm{font-family:var(--cc-fb);font-size:.84rem;font-weight:700;color:var(--cc-green);margin-bottom:.2rem;}
.cc-aside-price{font-family:var(--cc-fh);font-size:2.2rem;color:var(--cc-green);line-height:1;}
.cc-aside-unit{font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--cc-stone);margin-bottom:1.2rem;}
.cc-aside-acts{display:flex;flex-direction:column;gap:.5rem;}

/* ---- BUILDER ---- */
.cc-bld-wrap{max-width:var(--cc-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 265px;gap:4.5rem;align-items:start;}
.cc-bld-step{margin-bottom:2.75rem;}
.cc-bld-label{display:block;font-family:var(--cc-fb);font-size:.52rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--cc-gold);margin-bottom:.85rem;}
.cc-bld-rows{display:flex;flex-direction:column;gap:.45rem;}
.cc-bld-row{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r);padding:.82rem 1rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:var(--cc-ease);user-select:none;}
.cc-bld-row:hover{border-color:var(--cc-edge2);}
.cc-bld-row.cc-picked{border-color:var(--cc-gold);background:var(--cc-gbg);}
.cc-bld-ico{width:28px;height:28px;border-radius:var(--cc-r);background:var(--cc-gbg);color:var(--cc-gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.cc-bld-nm{font-family:var(--cc-fb);font-size:.84rem;color:var(--cc-ink);flex:1;}
.cc-bld-pr{font-size:.74rem;color:var(--cc-stone);flex-shrink:0;}
.cc-bld-tick{width:16px;height:16px;border-radius:3px;border:1.5px solid var(--cc-edge2);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--cc-ease);}
.cc-bld-row.cc-picked .cc-bld-tick{background:var(--cc-gold);border-color:var(--cc-gold);color:white;}
.cc-adn-chips{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;}
.cc-adn-chip{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r);padding:.72rem .9rem;cursor:pointer;transition:var(--cc-ease);user-select:none;}
.cc-adn-chip:hover{border-color:var(--cc-edge2);}
.cc-adn-chip.cc-picked{border-color:var(--cc-gold);background:var(--cc-gbg);}
.cc-adn-nm{font-size:.78rem;font-weight:700;color:var(--cc-ink);}
.cc-adn-pr{font-size:.68rem;color:var(--cc-muted);margin-top:.05rem;}
.cc-adn-chip.cc-picked .cc-adn-pr{color:var(--cc-gold);}
.cc-hrs-wrap{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r);padding:1.2rem 1.35rem;}
.cc-hrs-rng{-webkit-appearance:none;width:100%;height:3px;background:var(--cc-ivy3);border-radius:2px;margin-top:.65rem;}
.cc-hrs-rng::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--cc-gold);cursor:pointer;box-shadow:0 0 0 3px var(--cc-gbg);}
.cc-hrs-val{font-family:var(--cc-fh);font-size:1.4rem;color:var(--cc-green);}
/* Summary box */
.cc-order-box{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge2);border-radius:var(--cc-r2);overflow:hidden;position:sticky;top:1.5rem;}
.cc-ob-head{background:var(--cc-green);padding:.85rem 1.35rem;}
.cc-ob-head h3{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:rgba(250,247,240,.4);}
.cc-ob-lines{padding:1.1rem 1.35rem;min-height:58px;}
.cc-ob-empty{font-size:.75rem;color:var(--cc-stone);font-style:italic;}
.cc-ob-line{display:flex;justify-content:space-between;gap:.7rem;font-size:.76rem;margin-bottom:.48rem;}
.cc-ob-lnm{color:var(--cc-muted);}
.cc-ob-lpr{font-weight:700;color:var(--cc-ink);}
.cc-ob-foot{border-top:1.5px solid var(--cc-edge);padding:1.1rem 1.35rem;}
.cc-ob-tot{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem;}
.cc-ob-totl{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--cc-muted);}
.cc-ob-totn{font-family:var(--cc-fh);font-size:2rem;color:var(--cc-green);}
.cc-ob-go{display:block;width:100%;text-align:center;background:var(--cc-green);color:var(--cc-ivy);font-family:var(--cc-fb);font-size:.82rem;font-weight:700;padding:.78rem;border-radius:var(--cc-r);cursor:pointer;border:none;transition:var(--cc-ease);}
.cc-ob-go:hover:not(:disabled){background:var(--cc-grn3);}
.cc-ob-go:disabled{opacity:.22;cursor:not-allowed;}

/* ---- CHECKOUT ---- */
.cc-co-wrap{max-width:820px;margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1fr 255px;gap:3.5rem;align-items:start;}
.cc-fld-lbl{display:block;font-family:var(--cc-fb);font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--cc-muted);margin-bottom:.4rem;}
.cc-fld{width:100%;background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r);padding:.64rem .9rem;color:var(--cc-ink);font-size:.86rem;transition:border-color .2s;}
.cc-fld:focus{outline:none;border-color:var(--cc-gold);}
.cc-fgrp{margin-bottom:1rem;}
.cc-fgrp-duo{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;}
.cc-agree{display:flex;align-items:flex-start;gap:.5rem;font-size:.76rem;color:var(--cc-muted);line-height:1.55;margin:1.2rem 0;}
.cc-agree input{margin-top:.15rem;accent-color:var(--cc-gold);}
.cc-agree a{color:var(--cc-gold);}
.cc-co-panel{background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r2);overflow:hidden;position:sticky;top:1.5rem;}
.cc-co-ph{background:var(--cc-green);padding:.82rem 1.2rem;}
.cc-co-ph h3{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:rgba(250,247,240,.3);}
.cc-co-pb{padding:1.1rem 1.2rem;}
.cc-co-line{display:flex;justify-content:space-between;gap:1rem;font-size:.76rem;margin-bottom:.45rem;}
.cc-co-nm{color:var(--cc-muted);}
.cc-co-pr{font-weight:700;color:var(--cc-ink);}
.cc-co-hr{border:none;border-top:1.5px solid var(--cc-edge);margin:.75rem 0;}
.cc-co-totr{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.5rem;}
.cc-co-totl{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--cc-muted);}
.cc-co-totn{font-family:var(--cc-fh);font-size:1.55rem;color:var(--cc-green);}

/* ---- LEGAL DOCS ---- */
.cc-docpage{max-width:740px;margin:0 auto;padding:5rem 2.5rem;}
.cc-docpage h2{font-family:var(--cc-fh);font-size:1.5rem;color:var(--cc-green);margin:2.5rem 0 .75rem;}
.cc-docpage h3{font-family:var(--cc-fb);font-size:.88rem;font-weight:700;color:var(--cc-green);margin:1.4rem 0 .4rem;}
.cc-docpage p{font-size:.86rem;line-height:1.82;margin-bottom:.85rem;}
.cc-docpage ul{padding-left:1.2rem;margin:.4rem 0 .9rem;display:flex;flex-direction:column;gap:.3rem;}
.cc-docpage li{font-size:.86rem;list-style:disc;line-height:1.7;color:var(--cc-muted);}
.cc-docpage a{color:var(--cc-gold);}
.cc-docpage address{font-style:normal;background:var(--cc-gbg);border-left:3px solid var(--cc-gold);padding:.9rem 1.1rem;margin:.85rem 0;border-radius:0 var(--cc-r) var(--cc-r) 0;font-size:.86rem;line-height:1.9;color:var(--cc-ink);}
.cc-docpage table{width:100%;border-collapse:collapse;font-size:.78rem;margin:.85rem 0 1.35rem;}
.cc-docpage th{background:var(--cc-ivy2);color:var(--cc-green);padding:.5rem .9rem;text-align:left;font-weight:700;font-size:.66rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1.5px solid var(--cc-edge);}
.cc-docpage td{padding:.5rem .9rem;border-bottom:1px solid var(--cc-edge);color:var(--cc-muted);vertical-align:top;}

/* ---- 5-COLUMN FOOTER ---- */
.cc-footer{background:var(--cc-grn3);}
.cc-footer-grid{max-width:var(--cc-max);margin:0 auto;padding:5rem 2.5rem;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;gap:2.5rem;}
.cc-foot-brand-logo{display:flex;align-items:center;gap:.5rem;margin-bottom:.85rem;}
.cc-foot-brand-logo img{height:20px;}
.cc-foot-brand-nm{font-family:var(--cc-fb);font-size:.84rem;font-weight:700;color:rgba(250,247,240,.35);}
.cc-foot-tagline{font-size:.72rem;color:rgba(250,247,240,.15);line-height:1.65;max-width:26ch;margin-bottom:1.35rem;}
.cc-foot-soc{display:flex;gap:.38rem;}
.cc-foot-soc a{width:26px;height:26px;border-radius:var(--cc-r);background:rgba(250,247,240,.04);border:1px solid rgba(250,247,240,.07);display:flex;align-items:center;justify-content:center;color:rgba(250,247,240,.2);transition:var(--cc-ease);}
.cc-foot-soc a:hover{color:var(--cc-gold);background:var(--cc-gbg);border-color:var(--cc-gbg2);}
.cc-foot-col-h{font-family:var(--cc-fb);font-size:.52rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:rgba(250,247,240,.15);margin-bottom:.85rem;}
.cc-foot-links{display:flex;flex-direction:column;gap:.5rem;}
.cc-foot-links a{font-size:.76rem;color:rgba(250,247,240,.22);transition:color .18s;}
.cc-foot-links a:hover{color:rgba(250,247,240,.65);}
.cc-foot-contact a{display:flex;align-items:flex-start;gap:.42rem;font-size:.7rem;color:rgba(250,247,240,.2);margin-bottom:.5rem;transition:color .2s;}
.cc-foot-contact a:hover{color:rgba(250,247,240,.6);}
.cc-foot-contact svg{flex-shrink:0;margin-top:.1rem;color:var(--cc-gold);opacity:.6;}
.cc-footer-bottom{border-top:1px solid rgba(250,247,240,.05);padding:1.5rem 2.5rem;max-width:var(--cc-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.cc-foot-copy{font-size:.62rem;color:rgba(250,247,240,.1);}
.cc-foot-note{font-size:.62rem;color:rgba(250,247,240,.08);}
.cc-foot-legal{display:flex;gap:1.1rem;}
.cc-foot-legal a{font-size:.62rem;color:rgba(250,247,240,.1);transition:color .2s;}
.cc-foot-legal a:hover{color:rgba(250,247,240,.45);}

/* ---- COOKIE + CHAT ---- */
.cc-cookie{position:fixed;bottom:1.5rem;left:1.5rem;z-index:9999;max-width:320px;background:var(--cc-ivy);border:1.5px solid var(--cc-edge2);border-radius:var(--cc-r2);padding:1.2rem 1.4rem;box-shadow:0 8px 28px rgba(21,45,37,.12);display:none;}
.cc-cookie p{font-size:.75rem;color:var(--cc-muted);line-height:1.6;margin-bottom:.8rem;}
.cc-cookie-btns{display:flex;gap:.4rem;}
.cc-ck-yes{flex:1;background:var(--cc-green);color:var(--cc-ivy);font-family:var(--cc-fb);font-size:.75rem;font-weight:700;padding:.44rem .8rem;border-radius:var(--cc-r);border:none;cursor:pointer;transition:var(--cc-ease);}
.cc-ck-yes:hover{background:var(--cc-grn3);}
.cc-ck-no{font-family:var(--cc-fb);font-size:.75rem;font-weight:700;color:var(--cc-muted);padding:.44rem .8rem;border-radius:var(--cc-r);border:1.5px solid var(--cc-edge);background:none;cursor:pointer;}
.cc-chat-btn{position:fixed;bottom:1.75rem;right:1.75rem;z-index:9990;width:44px;height:44px;border-radius:50%;background:var(--cc-green);color:var(--cc-ivy);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px rgba(21,45,37,.25);cursor:pointer;border:none;transition:var(--cc-ease);}
.cc-chat-btn:hover{background:var(--cc-grn3);transform:scale(1.08);}
.cc-chatpane{position:fixed;bottom:5rem;right:1.75rem;z-index:9989;width:278px;background:var(--cc-ivy);border:1.5px solid var(--cc-edge2);border-radius:var(--cc-r2);overflow:hidden;box-shadow:0 12px 40px rgba(21,45,37,.12);transform:translateY(10px);opacity:0;pointer-events:none;transition:opacity .22s,transform .22s;}
.cc-chatpane.cc-cp-open{opacity:1;pointer-events:auto;transform:translateY(0);}
.cc-chat-hd{background:var(--cc-green);padding:.9rem 1.1rem;display:flex;align-items:center;justify-content:space-between;}
.cc-chat-ht{font-family:var(--cc-fh);font-size:.88rem;color:rgba(250,247,240,.9);}
.cc-chat-hs{font-size:.62rem;color:rgba(250,247,240,.28);}
.cc-chat-xb{color:rgba(250,247,240,.28);cursor:pointer;border:none;background:none;}
.cc-chat-xb:hover{color:rgba(250,247,240,.8);}
.cc-chat-bd{padding:1.1rem;}
.cc-chat-done{display:none;text-align:center;padding:1rem;font-size:.78rem;color:var(--cc-gold);font-weight:700;}
.cc-chat-inp{width:100%;background:var(--cc-ivy2);border:1.5px solid var(--cc-edge);border-radius:var(--cc-r);padding:.5rem .75rem;color:var(--cc-ink);font-size:.77rem;margin-bottom:.5rem;resize:none;transition:border-color .2s;}
.cc-chat-inp:focus{outline:none;border-color:var(--cc-gold);}
.cc-chat-go{width:100%;background:var(--cc-green);color:var(--cc-ivy);font-family:var(--cc-fb);font-size:.77rem;font-weight:700;padding:.5rem;border-radius:var(--cc-r);border:none;cursor:pointer;transition:var(--cc-ease);}
.cc-chat-go:hover{background:var(--cc-grn3);}

/* ---- RESULT PAGES ---- */
.cc-result-pg{min-height:75vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:5rem 2.5rem;}
.cc-ri{max-width:450px;}
.cc-ri-ico{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;}
.cc-ri-ok{background:var(--cc-gbg);color:var(--cc-gold);border:1px solid var(--cc-gbg2);}
.cc-ri-err{background:rgba(220,38,38,.06);color:#DC2626;border:1px solid rgba(220,38,38,.12);}
.cc-ri h1{margin-bottom:.75rem;}
.cc-ri p{margin-bottom:1.75rem;}

/* ---- REVEAL ---- */
.cc-fade{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;}
.cc-fade.cc-vis{opacity:1;transform:translateY(0);}
.cc-fade-l{opacity:0;transform:translateX(-14px);transition:opacity .5s ease,transform .5s ease;}
.cc-fade-l.cc-vis{opacity:1;transform:translateX(0);}
.cc-fade-r{opacity:0;transform:translateX(14px);transition:opacity .5s ease,transform .5s ease;}
.cc-fade-r.cc-vis{opacity:1;transform:translateX(0);}

/* ---- RESPONSIVE ---- */
@media(max-width:1060px){
  .cc-nav-left,.cc-nav-right{display:none;}
  .cc-nav-burger{display:flex;}
  .cc-editorial-grid{grid-template-columns:1fr;gap:2rem;}
  .cc-ed-left,.cc-ed-right{display:none;}
  .cc-ed-center{border:none;padding:0;}
  .cc-svc-alt-row{grid-template-columns:1fr;}
  .cc-svc-alt-img{max-height:260px;}
  .cc-svc-alt-img img{min-height:260px;}
  .cc-svc-alt-row.cc-row-rev .cc-svc-alt-img{order:1;}
  .cc-svc-alt-row.cc-row-rev .cc-svc-alt-body{order:2;}
  .cc-cases-3col{grid-template-columns:1fr 1fr;}
  .cc-pkg-cols{grid-template-columns:1fr;}
  .cc-faq-2col{grid-template-columns:1fr;}
  .cc-svcp-wrap,.cc-bld-wrap,.cc-co-wrap{grid-template-columns:1fr;}
  .cc-proc-content{grid-template-columns:1fr;}
  .cc-footer-grid{grid-template-columns:1fr 1fr;gap:1.5rem;}
}
@media(max-width:640px){
  .cc-shell{padding:0 1.25rem;}
  .cc-seg{padding:4.5rem 0;}
  .cc-cases-3col{grid-template-columns:1fr;}
  .cc-adn-chips{grid-template-columns:1fr;}
  .cc-fgrp-duo{grid-template-columns:1fr;}
  .cc-footer-grid{grid-template-columns:1fr;}
}
