
:root{
  --pink:#E8177E;
  --pink-deep:#C40E68;
  --pink-soft:#FDE3F0;
  --teal:#1EB8B0;
  --teal-deep:#118F89;
  --gold:#E0A62B;
  --cream:#FFFBF6;
  --ink:#2B1B24;
  --ink-soft:#8A7480;
  --font-script:'Pacifico', cursive;
  --font-head:'Baloo 2', sans-serif;
  --font-body:'Poppins', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--cream);color:var(--ink);line-height:1.55;overflow-x:hidden;}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
ul{list-style:none;}
button{font-family:inherit;}
:focus-visible{outline:3px solid var(--teal);outline-offset:3px;}
.wrap{max-width:1180px;margin:0 auto;padding:0 32px;}

.eyebrow{
  font-family:var(--font-head);font-weight:700;font-size:13px;letter-spacing:.04em;
  text-transform:uppercase;color:var(--teal-deep);
  display:inline-flex;align-items:center;gap:8px;
}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--pink);display:inline-block;}
.section-eyebrow{
  display:block;font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--pink);margin-bottom:8px;
}

.scallop{height:26px;width:100%;background-repeat:repeat-x;background-size:32px 26px;}
.scallop-cream{background-image:radial-gradient(circle at 16px 0, transparent 15px, var(--cream) 16px);}
.scallop-pink{background-image:radial-gradient(circle at 16px 0, transparent 15px, var(--pink-soft) 16px);}

header.nav{position:sticky;top:0;z-index:50;background:rgba(255,251,246,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(43,27,36,.08);}
.nav-inner{max-width:1180px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between;}
.logo{display:flex;align-items:center;white-space:nowrap;}
.logo-img{height:56px;width:auto;display:block;}
.nav-links{display:flex;gap:30px;}
.nav-links a{font-family:var(--font-head);font-weight:600;font-size:14.5px;color:var(--ink);opacity:.82;transition:.2s;}
.nav-links a:hover,.nav-links a.active{opacity:1;color:var(--pink);}
.nav-cta{
  font-family:var(--font-head);font-weight:700;font-size:13.5px;
  background:var(--teal);color:#fff;padding:11px 20px;border-radius:100px;border:none;cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;transition:.2s;
}
.nav-cta:hover{background:var(--teal-deep);transform:translateY(-1px);}
.nav-toggle{
  display:none;background:none;border:none;color:var(--pink-deep);cursor:pointer;
  align-items:center;justify-content:center;padding:6px;
}
@media(max-width:860px){
  .nav-links{position:absolute;top:100%;left:0;right:0;background:var(--cream);flex-direction:column;gap:0;max-height:0;overflow:hidden;transition:max-height .3s ease;border-bottom:1px solid rgba(43,27,36,.08);}
  .nav-links.open{max-height:340px;}
  .nav-links a{padding:16px 32px;border-top:1px solid rgba(43,27,36,.06);width:100%;}
  .nav-toggle{display:flex;}
  .logo-img{height:46px;}
}
@media(max-width:420px){
  .nav-cta{padding:10px;width:38px;height:38px;}
  .nav-cta-label{display:none;}
  .logo-img{height:40px;}
}

.icon{width:1em;height:1em;flex-shrink:0;display:inline-block;vertical-align:-0.15em;}
.nav-cta .icon,.nav-toggle .icon{width:17px;height:17px;}
.btn .icon{width:18px;height:18px;}
.post-meta .icon{width:15px;height:15px;color:var(--teal-deep);}
.contact-actions .icon{width:18px;height:18px;}

.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:100px;font-family:var(--font-head);font-weight:700;font-size:14.5px;cursor:pointer;border:2px solid transparent;transition:.2s;}
.btn[hidden]{display:none!important;}
.btn-primary{background:var(--pink);color:#fff;}
.btn-primary:hover{background:var(--pink-deep);transform:translateY(-2px);}
.btn-ghost{border-color:var(--ink);color:var(--ink);}
.btn-ghost:hover{border-color:var(--teal-deep);color:var(--teal-deep);transform:translateY(-2px);}

@media(max-width:480px){
  .wrap{padding:0 20px;}
}

.hero-carousel{
  padding:36px 0 60px;background:
  radial-gradient(ellipse at 85% -10%, rgba(232,23,126,.10), transparent 55%),
  radial-gradient(ellipse at -5% 90%, rgba(30,184,176,.12), transparent 55%);
}
.carousel{position:relative;width:100%;height:420px;overflow:hidden;border-radius:24px;box-shadow:0 24px 48px -24px rgba(43,27,36,.35);touch-action:pan-y;}
.carousel-track{display:flex;width:100%;height:100%;transition:transform .6s cubic-bezier(.4,0,.2,1);}
.carousel-slide{
  flex:0 0 100%;width:100%;height:100%;position:relative;
  background-image:var(--bg-desktop);background-size:cover;background-position:var(--pos-desktop, center);
  display:flex;align-items:flex-end;
  padding-bottom:56px;box-sizing:border-box;
}
.carousel-overlay{
  position:absolute;inset:0;
  background:linear-gradient(90deg, rgba(43,27,36,.55) 0%, rgba(43,27,36,.25) 32%, rgba(43,27,36,0) 48%);
}
.carousel-copy{position:relative;z-index:2;max-width:560px;padding:0 48px;color:#fff;}
.carousel-eyebrow{
  display:inline-block;font-family:var(--font-head);font-weight:700;font-size:12px;letter-spacing:.06em;
  text-transform:uppercase;color:var(--gold);margin-bottom:10px;
  text-shadow:0 2px 6px rgba(0,0,0,.5);
}
.carousel-copy h2{font-family:var(--font-head);font-weight:800;font-size:clamp(26px,3.4vw,38px);line-height:1.1;margin:0 0 14px;text-shadow:0 3px 14px rgba(0,0,0,.55);}
.carousel-copy p{font-size:15.5px;line-height:1.5;color:rgba(255,255,255,.92);margin:0 0 22px;max-width:480px;text-shadow:0 2px 8px rgba(0,0,0,.5);}
.carousel-dots{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:8px;z-index:3;}
.carousel-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.5);border:none;cursor:pointer;padding:0;transition:.2s;}
.carousel-dot.active{background:#fff;transform:scale(1.25);}
.carousel-badge{position:absolute;top:20px;right:20px;z-index:3;width:108px;filter:drop-shadow(0 8px 16px rgba(43,27,36,.35));transform:rotate(6deg);}
@media(max-width:860px){
  .hero-carousel{padding:24px 0 44px;}
  .carousel{height:480px;border-radius:18px;}
  .carousel-slide{background-image:var(--bg-mobile);background-position:var(--pos-mobile, center);}
  .carousel-copy{padding:0 28px;max-width:100%;}
  .carousel-overlay{background:linear-gradient(180deg, rgba(43,27,36,0) 0%, rgba(43,27,36,0) 40%, rgba(43,27,36,.62) 68%);}
  .carousel-badge{width:80px;top:14px;right:14px;}
}
@media(max-width:480px){
  .carousel{height:520px;border-radius:14px;}
  .carousel-copy{padding:0 20px;}
  .carousel-copy p{font-size:14.5px;}
  .carousel-badge{width:64px;top:12px;right:12px;}
}

.section-head{max-width:620px;margin-bottom:46px;}
.section-head h2{font-family:var(--font-head);font-weight:800;font-size:clamp(28px,3.2vw,38px);margin-top:10px;color:var(--ink);}
.section-head p{color:var(--ink-soft);margin-top:12px;font-size:15px;}

.posts{padding:90px 0 30px;}
.filter-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:36px;}
.filter-tabs button{
  font-family:var(--font-head);font-weight:600;font-size:13px;
  background:#fff;border:2px solid var(--pink-soft);color:var(--ink);
  padding:9px 18px;border-radius:100px;cursor:pointer;transition:.2s;
}
.filter-tabs button.active,.filter-tabs button:hover{background:var(--pink);border-color:var(--pink);color:#fff;}

.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.post-card{
  background:#fff;border-radius:20px;overflow:hidden;border:1px solid rgba(43,27,36,.06);
  transition:transform .25s ease, box-shadow .25s ease;opacity:0;transform:translateY(14px);
  display:flex;flex-direction:column;
}
.post-card.visible{opacity:1;transform:translateY(0);}
.post-card:hover{transform:translateY(-6px);box-shadow:0 20px 34px -20px rgba(43,27,36,.28);}
.post-card .art{aspect-ratio:1/1;height:auto;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:18px 18px 0;box-sizing:border-box;}
.post-card .art img{width:100%;height:100%;object-fit:cover;border-radius:14px;display:block;}
.post-card[data-cat="taller"] .art img,
.post-cover.taller-cover img{object-position:top;}
.post-card .info{padding:14px 18px 22px;flex:1;display:flex;flex-direction:column;}
.post-card .cat{font-family:var(--font-head);font-weight:700;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--teal-deep);}
.post-card h3{font-family:var(--font-head);font-weight:700;font-size:17px;margin-top:6px;color:var(--ink);}
.post-card .excerpt{font-size:13.5px;color:var(--ink-soft);margin-top:8px;flex:1;}
.post-card .read-more{
  margin-top:14px;font-family:var(--font-head);font-weight:700;font-size:12.5px;color:var(--pink);
  display:inline-flex;align-items:center;gap:6px;
}
.post-card .price{
  margin-top:10px;font-family:var(--font-head);font-weight:700;font-size:14px;color:var(--pink);
}
.post-card.hidden{display:none;}
.section-head-row{
  display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:46px;
  flex-wrap:nowrap;
}
.section-head-row .section-head{margin-bottom:0;min-width:0;}
.talleres-logo-box{flex:0 0 auto;width:140px;height:auto;}
.section-logo-img{width:100%;height:auto;display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,0.12));}
@media(max-width:640px){
  .section-head-row{gap:16px;align-items:flex-start;}
  .talleres-logo-box{width:92px;margin-top:4px;}
  .section-head-row .section-head h2{font-size:22px;margin-top:6px;}
  .section-head-row .section-head p{font-size:13px;margin-top:8px;}
}
@media(max-width:400px){
  .talleres-logo-box{width:76px;}
  .section-head-row .section-head h2{font-size:19px;}
}

.pg-section{
  margin:38px -24px 26px;padding:26px 24px 8px;background:#FCF3EA;border-radius:22px;
  border-top:1px solid rgba(43,27,36,.06);
}
.pg-section-head{margin-bottom:16px;}
.pg-eyebrow{display:inline-block;font-family:var(--font-head);font-weight:700;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--pink);margin-bottom:6px;}
.pg-section-head h2{font-family:var(--font-head);font-weight:700;font-size:22px;color:var(--ink);margin:0 0 6px;}
.pg-section-sub{font-size:14px;color:var(--ink-soft);margin:0;}
.pg-gallery{margin:0;}
.pg-main{
  position:relative;border-radius:20px;overflow:hidden;aspect-ratio:4/3;background:#f2ece3;
  box-shadow:0 20px 40px -26px rgba(43,27,36,.35);
}
.pg-main-img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .15s ease;}
.pg-main-caption{
  position:absolute;left:16px;bottom:14px;background:rgba(43,27,36,.62);color:#fff;font-family:var(--font-head);
  font-weight:600;font-size:12.5px;padding:6px 12px;border-radius:100px;backdrop-filter:blur(3px);
}
.pg-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding-bottom:4px;}
.pg-thumb{
  flex:0 0 auto;width:74px;height:74px;border-radius:12px;overflow:hidden;cursor:pointer;
  border:2.5px solid transparent;opacity:.62;transition:.2s;padding:0;background:none;
}
.pg-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.pg-thumb:hover{opacity:.9;}
.pg-thumb.active{opacity:1;border-color:var(--pink);}
@media(max-width:640px){
  .pg-section{margin:30px -16px 22px;padding:22px 16px 6px;border-radius:16px;}
}

.order-section{
  margin:38px 0 0;padding:30px 26px;background:#FCF3EA;border-radius:22px;
  border-top:1px solid rgba(43,27,36,.06);
}
.order-head{margin-bottom:20px;}
.order-eyebrow{display:inline-block;font-family:var(--font-head);font-weight:700;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--pink);margin-bottom:6px;}
.order-head h2{font-family:var(--font-head);font-weight:700;font-size:24px;color:var(--ink);margin:0 0 6px;}
.order-head p{font-size:14px;color:var(--ink-soft);margin:0;}
.order-step{margin-bottom:22px;}
.order-step label.step-label{display:block;font-family:var(--font-head);font-weight:700;font-size:13.5px;color:var(--ink);margin-bottom:10px;}
.deco-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.deco-card{
  background:#fff;border:2px solid rgba(43,27,36,.1);border-radius:16px;padding:16px;cursor:pointer;
  transition:.18s;text-align:left;
}
.deco-card:hover{border-color:rgba(232,23,126,.4);}
.deco-card.active{border-color:var(--pink);background:#FFF3F8;box-shadow:0 8px 20px -12px rgba(232,23,126,.4);}
.deco-card .dc-name{display:block;font-family:var(--font-head);font-weight:700;font-size:14.5px;color:var(--ink);margin-bottom:3px;}
.deco-card .dc-from{display:block;font-size:12px;color:var(--ink-soft);}
.size-options{display:flex;flex-wrap:wrap;gap:10px;}
.size-chip{
  flex:1 1 auto;min-width:120px;background:#fff;border:2px solid rgba(43,27,36,.1);border-radius:14px;
  padding:11px 14px;cursor:pointer;text-align:center;transition:.18s;
}
.size-chip:hover{border-color:rgba(232,23,126,.4);}
.size-chip.active{border-color:var(--pink);background:#FFF3F8;}
.size-chip .sc-kg{display:block;font-family:var(--font-head);font-weight:700;font-size:14.5px;color:var(--ink);}
.size-chip .sc-porc{display:block;font-size:11.5px;color:var(--ink-soft);margin-top:2px;}
.size-chip .sc-price{display:block;font-family:var(--font-head);font-weight:700;font-size:13px;color:var(--pink);margin-top:4px;}
.order-select{
  width:100%;padding:11px 13px;border-radius:12px;border:1.5px solid rgba(43,27,36,.15);
  font-family:var(--font-body);font-size:14px;color:var(--ink);box-sizing:border-box;background:#fff;
}
.sabor-note{font-size:11.5px;color:var(--ink-soft);margin-top:6px;}
.price-box{
  display:flex;align-items:center;justify-content:space-between;background:#2B1B24;color:#fff;
  border-radius:16px;padding:16px 20px;margin:22px 0;
}
.price-box .pb-label{font-size:12.5px;color:rgba(255,255,255,.7);}
.price-box .pb-amount{font-family:var(--font-head);font-weight:800;font-size:26px;color:#FFD966;}
.price-box .pb-note{font-size:11px;color:rgba(255,255,255,.55);margin-top:2px;}
.price-disclaimer{
  display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.5;color:var(--ink-soft);
  background:#fff;border:1px dashed rgba(43,27,36,.18);border-radius:14px;padding:12px 14px;margin:0 0 22px;
}
.price-disclaimer .icon{width:15px;height:15px;flex:0 0 auto;margin-top:2px;color:var(--pink);}
.order-contact{background:#fff;border-radius:16px;padding:20px;border:1px solid rgba(43,27,36,.08);}
.order-contact label{display:block;font-family:var(--font-head);font-weight:600;font-size:12.5px;color:var(--ink);margin-bottom:14px;}
.order-contact input,.order-contact textarea{
  width:100%;margin-top:6px;padding:11px 13px;border-radius:12px;border:1.5px solid rgba(43,27,36,.15);
  font-family:var(--font-body);font-size:14px;color:var(--ink);box-sizing:border-box;background:var(--cream);
}
.order-contact .field-hint{display:block;margin-top:6px;font-family:var(--font-body);font-weight:400;font-size:11.5px;color:var(--ink-soft);}
.order-contact button{width:100%;justify-content:center;margin-top:4px;}
.order-contact .hp-field{position:absolute;left:-9999px;}
@media(max-width:640px){
  .order-section{margin:30px -16px 0;padding:24px 16px;border-radius:16px;}
  .deco-options{grid-template-columns:1fr;}
}
@media(max-width:940px){.post-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.post-grid{grid-template-columns:1fr;}}

.testimonials{padding:100px 0;}
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.t-card{background:#fff;border:1px solid rgba(43,27,36,.08);border-radius:18px;padding:26px;}
.t-stars{color:var(--gold);font-size:15px;margin-bottom:12px;letter-spacing:2px;}
.t-card p{font-size:14px;color:var(--ink);margin-bottom:18px;font-style:italic;}
.t-who{display:flex;align-items:center;gap:10px;}
.t-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;flex:0 0 auto;background:var(--teal);}
.t-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.t-who strong{display:block;font-family:var(--font-head);font-size:13.5px;}
.t-who span{font-size:11.5px;color:var(--ink-soft);}
@media(max-width:860px){.t-grid{grid-template-columns:1fr;}}

.founder{background:var(--ink);color:#FFF6FA;padding:90px 0;position:relative;overflow:hidden;}
.founder-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center;}
.founder-photo{
  width:100%;aspect-ratio:1;border-radius:24px;overflow:hidden;
  box-shadow:0 20px 40px -20px rgba(0,0,0,.5);
}
.founder-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.founder blockquote{font-family:var(--font-head);font-weight:700;font-size:clamp(20px,2.6vw,28px);line-height:1.4;margin:14px 0 18px;}
.founder cite{font-size:12.5px;color:rgba(255,246,250,.6);font-style:normal;}
.founder p.name{font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--gold);margin-top:22px;}
.founder p.role{font-size:13px;color:rgba(255,246,250,.65);}
@media(max-width:820px){
  .founder-inner{grid-template-columns:1fr;justify-items:center;text-align:center;}
  .founder-photo{max-width:240px;margin:0 auto;}
}

.contact{padding:90px 0 50px;}
.contact-box{
  background:linear-gradient(120deg,var(--pink),var(--pink-deep));border-radius:28px;padding:56px 48px;color:#fff;
  display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;
}
.contact-box h2{font-family:var(--font-head);font-weight:800;font-size:clamp(26px,3vw,34px);margin-bottom:12px;}
.contact-box p{color:rgba(255,255,255,.85);font-size:15px;max-width:420px;}
.contact-actions{display:flex;flex-direction:column;gap:12px;}
.contact-actions a{
  background:#fff;color:var(--pink-deep);font-family:var(--font-head);font-weight:700;font-size:14px;
  padding:14px 20px;border-radius:100px;transition:.2s;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
}
.contact-actions a:hover{background:var(--ink);color:#fff;}
@media(max-width:820px){.contact-box{grid-template-columns:1fr;padding:40px 28px;}}

footer{padding:40px 0 30px;border-top:1px solid rgba(43,27,36,.08);}
.footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;align-items:center;}
.footer-row .logo-img{height:44px;}
.footer-links{display:flex;gap:18px;font-size:13px;}
.footer-links a{color:var(--ink-soft);text-decoration:none;}
.footer-links a:hover{color:var(--pink);}
.footer-meta{font-size:12.5px;color:var(--ink-soft);text-align:right;}
@media(max-width:640px){.footer-row{flex-direction:column;text-align:center;}.footer-meta{text-align:center;}}

.back-link{
  display:inline-flex;align-items:center;gap:6px;font-family:var(--font-head);font-weight:600;font-size:13.5px;
  color:var(--teal-deep);margin-bottom:26px;
}
.back-link:hover{color:var(--pink);}

.post-header{padding:44px 0 10px;}
.post-header .cat{font-family:var(--font-head);font-weight:700;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--teal-deep);}
.post-header h1{font-family:var(--font-head);font-weight:800;font-size:clamp(30px,4.2vw,46px);line-height:1.1;margin:12px 0 16px;color:var(--ink);}
.post-meta{display:flex;gap:16px;flex-wrap:wrap;color:var(--ink-soft);font-size:13.5px;margin-bottom:8px;}
.post-meta span{display:inline-flex;align-items:center;gap:6px;}

.post-cover{
  height:260px;border-radius:24px;margin:28px auto 10px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 20px 40px -26px rgba(43,27,36,.35);overflow:hidden;
}
.post-cover svg{width:120px;height:120px;}
.post-cover img{width:100%;height:100%;object-fit:cover;}
.post-cover.has-photo{aspect-ratio:1/1;height:auto;width:100%;max-width:480px;box-sizing:border-box;}

.post-body{padding:20px 0 70px;}
.post-body>.wrap{max-width:760px;}
.post-body-inner{padding:20px 0 0;}
.post-body p,.post-body-inner p{font-size:15.5px;color:var(--ink);margin-bottom:18px;}
.post-body h2,.post-body-inner h2{font-family:var(--font-head);font-weight:700;font-size:23px;color:var(--ink);margin:34px 0 14px;}
.post-body ul,.post-body-inner ul{margin:0 0 20px 0;}
.post-body ul li,.post-body-inner ul li{font-size:15px;color:var(--ink);padding-left:24px;position:relative;margin-bottom:9px;}
.post-body ul li::before,.post-body-inner ul li::before{content:"✓";position:absolute;left:0;color:var(--pink);font-weight:700;}
.post-body blockquote,.post-body-inner blockquote{
  border-left:4px solid var(--pink);padding:6px 0 6px 20px;margin:26px 0;font-style:italic;color:var(--ink-soft);font-size:15.5px;
}
.post-cta{
  margin-top:20px;background:var(--pink-soft);border-radius:20px;padding:28px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;
}

.post-layout{display:grid;grid-template-columns:1fr 340px;gap:44px;align-items:start;padding:28px 0 70px;}
.post-main{min-width:0;}
.post-main .post-cover{margin:0 0 6px;}
.post-main .post-cover.has-photo{max-width:100%;}
.post-sidebar{position:sticky;top:104px;}

.inscription-card{
  background:#fff;border-radius:22px;padding:28px 26px;box-shadow:0 20px 40px -26px rgba(43,27,36,.3);
  border:1px solid rgba(43,27,36,.08);
}
.inscription-card h3{font-family:var(--font-head);font-weight:700;font-size:20px;margin:0 0 8px;color:var(--ink);}
.inscription-card>p{font-size:13.5px;color:var(--ink-soft);margin:0 0 20px;line-height:1.5;}
.inscription-card .hp-field{position:absolute;left:-9999px;}
.inscription-card label{display:block;font-family:var(--font-head);font-weight:600;font-size:12.5px;color:var(--ink);margin-bottom:14px;}
.inscription-card input,.inscription-card textarea{
  width:100%;margin-top:6px;padding:11px 13px;border-radius:12px;border:1.5px solid rgba(43,27,36,.15);
  font-family:var(--font-body);font-size:14px;color:var(--ink);box-sizing:border-box;background:var(--cream);transition:.2s;
}
.inscription-card input:focus,.inscription-card textarea:focus{border-color:var(--teal);outline:none;}
.inscription-card textarea{resize:vertical;min-height:70px;}
.inscription-card button{width:100%;justify-content:center;margin-top:4px;}

@media(max-width:900px){
  .post-layout{grid-template-columns:1fr;}
  .post-sidebar{position:static;}
}
.post-cta p{margin:0;font-family:var(--font-head);font-weight:700;font-size:16px;color:var(--ink);}
.post-cta .btn{white-space:nowrap;}

.related{padding:20px 0 90px;}
.related h2{font-family:var(--font-head);font-weight:800;font-size:24px;margin-bottom:24px;color:var(--ink);}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
@media(max-width:940px){.related-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.related-grid{grid-template-columns:1fr;}}

.kids-header-section{padding:34px 0 10px;}
.kh-back-link{margin-bottom:16px;}
.kh-card{
  position:relative;background:#fff;border-radius:28px;overflow:hidden;
  box-shadow:0 24px 48px -24px rgba(43,27,36,.28);display:grid;grid-template-columns:1fr 1fr;
}
.kh-photo{position:relative;min-height:340px;}
.kh-photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%;}
.kh-ribbon{
  position:absolute;top:16px;left:16px;background:var(--gold);color:#fff;font-family:var(--font-head);
  font-weight:800;font-size:12px;padding:7px 14px;border-radius:100px;transform:rotate(-4deg);
}
.kh-text{
  padding:40px;display:flex;flex-direction:column;justify-content:center;
  background:
    radial-gradient(ellipse at 100% 0%, rgba(232,23,126,.08), transparent 55%),
    radial-gradient(ellipse at 0% 100%, rgba(30,184,176,.10), transparent 55%);
}
.kh-text h1{font-family:var(--font-head);font-weight:800;font-size:clamp(28px,3.6vw,40px);line-height:1.05;color:var(--ink);margin-top:4px;}
.kh-sub{color:var(--ink-soft);font-size:14.5px;max-width:400px;margin:14px 0 22px;}
.kh-badges{display:flex;flex-wrap:wrap;gap:9px;}
.kh-badge{background:var(--pink-soft);color:var(--pink-deep);font-family:var(--font-head);font-weight:700;font-size:12px;padding:8px 13px;border-radius:100px;}
.kh-badge.alt{background:#E8F8F7;color:var(--teal-deep);}
@media(max-width:760px){
  .kh-card{grid-template-columns:1fr;border-radius:22px;}
  .kh-photo{min-height:220px;}
  .kh-text{padding:28px 24px;}
}

.kids-content{padding:44px 0 10px;}
.ca-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.ca-card{
  border-radius:20px;padding:24px 20px;color:var(--ink);border:1px solid rgba(43,27,36,.05);
  box-shadow:0 14px 26px -20px rgba(43,27,36,.25);
}
.ca-card.c1{background:var(--pink-soft);}
.ca-card.c1 .ca-icon,.ca-card.c1 h3{color:var(--pink-deep);}
.ca-card.c2{background:#E8F8F7;}
.ca-card.c2 .ca-icon,.ca-card.c2 h3{color:var(--teal-deep);}
.ca-card.c3{background:#FFF4E3;}
.ca-card.c3 .ca-icon,.ca-card.c3 h3{color:#B9791A;}
.ca-card.c4{background:#FCF3EA;}
.ca-card.c4 .ca-icon,.ca-card.c4 h3{color:var(--pink-deep);}
.ca-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.ca-icon{font-size:22px;line-height:1;display:block;}
.ca-card h3{font-family:var(--font-head);font-weight:800;font-size:15.5px;margin:0;}
.ca-card ul{margin:0;}
.ca-card li{font-size:12.5px;color:var(--ink);opacity:.85;padding:3px 0 3px 16px;position:relative;list-style:none;}
.ca-card li::before{content:"•";position:absolute;left:0;color:var(--ink-soft);}
@media(max-width:940px){.ca-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:560px){.ca-grid{grid-template-columns:1fr;}}

.kids-gallery-section{padding:16px 0 10px;}
.kids-gallery-narrow{max-width:760px;margin:0 auto;}
.kids-gallery-narrow .pg-section{margin:0;}

.kids-reservation{padding:30px 0 20px;}
.rs-card{background:#FCF3EA;border-radius:22px;padding:34px 36px;border:1px solid rgba(43,27,36,.06);}
.rs-head{max-width:480px;margin-bottom:22px;}
.rs-head h2{font-family:var(--font-head);font-weight:800;font-size:22px;color:var(--ink);margin:2px 0 8px;}
.rs-head p{font-size:14px;color:var(--ink-soft);}
.rs-steps{display:flex;gap:22px;margin-bottom:22px;flex-wrap:wrap;}
.rs-step{display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:700;font-size:12.5px;color:var(--ink-soft);}
.rs-step .n{width:24px;height:24px;border-radius:50%;background:#fff;border:2px solid var(--pink);color:var(--pink);display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;}
.rs-step.active{color:var(--ink);}
.rs-step.active .n{background:var(--pink);color:#fff;}
.rs-group{background:#fff;border-radius:16px;padding:20px 22px;margin-bottom:14px;}
.rs-group h4{font-family:var(--font-head);font-weight:700;font-size:13px;color:var(--pink-deep);margin-bottom:12px;}
.rs-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.rs-card label{display:block;font-family:var(--font-head);font-weight:600;font-size:12.5px;color:var(--ink);margin-bottom:14px;}
.rs-group label:last-child{margin-bottom:0;}
.rs-card input,.rs-card select,.rs-card textarea{
  width:100%;margin-top:6px;padding:11px 13px;border-radius:12px;border:1.5px solid rgba(43,27,36,.15);
  font-family:var(--font-body);font-size:14px;color:var(--ink);box-sizing:border-box;background:#fff;
}
.rs-card textarea{resize:vertical;min-height:70px;}
.rs-card button{width:100%;justify-content:center;margin-top:4px;}
.rs-card .hp-field{position:absolute;left:-9999px;}
@media(max-width:640px){.rs-row{grid-template-columns:1fr;}.rs-card{padding:26px 22px;}}

.kids-cta-section{padding:10px 0 40px;}
