:root{
  --cream:#faf6f0;--paper:#fffdf9;--ink:#23363d;--muted:#5c6e75;
  --line:#e9ddd0;--accent:#c75c34;--accent2:#e0a55e;--deep:#23363d;
  --gold:#bd8b4c;--dark:#18262b;--shadow:0 24px 70px rgba(35,54,61,.12);
  --container:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Outfit",sans-serif;color:var(--ink);background:var(--cream);overflow-x:hidden}
img{display:block;width:100%;object-fit:cover}
p{font-family:"Outfit",sans-serif;font-size:15px;line-height:1.75;color:var(--muted)}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
.container{width:min(var(--container),calc(100% - 48px));margin:auto}
.serif{font-family:"Cormorant Garamond",serif}
.script{font-family:"Italianno",cursive;color:var(--accent);font-size:38px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase}
.eyebrow:before,.eyebrow:after{content:"";width:31px;height:1px;background:currentColor;opacity:.5}
.section-title{font-family:"Cormorant Garamond",serif;font-size:clamp(42px,4.7vw,60px);line-height:.94;font-weight:500;letter-spacing:-1.6px}
.section-title em{color:var(--accent);font-style:italic}
.section-copy{line-height:1.85}
.btn{
  border:0;color:#fff;padding:12px 28px;border-radius:30px;font-size:12px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;display:inline-flex;align-items:center;gap:10px;
  transition:.3s cubic-bezier(.25,.8,.25,1);cursor:pointer;
  background:linear-gradient(110deg,#a94427 0%,#d8663b 52%,#e6a45d 100%);
  box-shadow:0 6px 20px rgba(181,73,39,.18);
}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(181,73,39,.27)}
.btn-light{background:linear-gradient(110deg,#fff,#f8ece0);color:#a94427}
.btn-outline{background:transparent;color:var(--ink);border:1.5px solid #d8c6b4;box-shadow:none}
.btn-outline:hover{color:#fff;background:linear-gradient(110deg,#a94427,#e0a05a);border-color:transparent}
.btn-gradient-outline{
  background:transparent;color:var(--accent);border:2px solid transparent;
  background-image:linear-gradient(rgba(255,255,255,0.7), rgba(255,255,255,0.7)), linear-gradient(110deg,#ffffff 0%,#e0a55e 50%,#c75c34 100%);
  background-origin:border-box;background-clip:padding-box,border-box;
  box-shadow:0 4px 16px rgba(199,92,52,0.12);
}
.btn-gradient-outline:hover{
  transform:translateY(-2px);color:#fff;
  background-image:linear-gradient(110deg,#a94427 0%,#d8663b 52%,#e6a45d 100%), linear-gradient(110deg,#ffffff 0%,#e0a55e 50%,#c75c34 100%);
  box-shadow:0 10px 26px rgba(199,92,52,0.28);
}
.btn-whatsapp{background:#1e9860;color:#fff;box-shadow:0 6px 20px rgba(30,152,96,.2)}
.btn-whatsapp:hover{background:#157c4f;color:#fff;box-shadow:0 10px 25px rgba(30,152,96,.3)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* NAV */
.nav{height:105px;background:#f6efe6;backdrop-filter:blur(18px);border-bottom:1px solid #ebdcc8;display:flex;align-items:center;position:sticky;top:0;z-index:1000}
.nav-inner{display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f5e5d4;border:1px solid #e7cdb4;color:#a64e2f;font-size:22px}
.brand-logo{width:94px;height:94px;object-fit:contain;transition:.3s}
.brand-text strong{display:block;font-family:"Cormorant Garamond",serif;font-size:25px;line-height:.9;font-weight:600}
.brand-text span{font-size:7px;color:#a28a76;letter-spacing:1.4px}
.nav-links{display:flex;align-items:center;gap:34px}
.nav-links a{font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;position:relative}
.nav-links a:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1.5px;background:var(--accent);transition:.3s}
.nav-links a:hover:after{width:100%}
.nav-links a.active{color:var(--accent)}
.nav-links a.active:after{width:100%}
.nav-actions{display:flex;align-items:center;gap:12px}
.whatsapp{width:35px;height:35px;border:1px solid #b7cdbd;color:#1e9860;border-radius:50%;display:grid;place-items:center;font-size:17px}
.menu{display:none;background:none;border:0;font-size:25px;cursor:pointer}

/* HERO */
.hero{
  min-height:calc(100vh - 74px);position:relative;overflow:hidden;
  background:#f8f2eb;
}
.hero-bg{position:absolute;inset:0}
.hero-bg img{height:100%;object-position:center right;filter:saturate(.9) contrast(1.02)}
.hero-content{position:relative;z-index:3;min-height:calc(100vh - 74px);display:flex;align-items:center}
.hero-copy{width:54%;padding:65px 0 90px}
.hero h1{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(52px,6.2vw,92px);line-height:1.02;letter-spacing:-2.5px;margin:17px 0 30px;max-width:800px}
.hero h1 span{color:var(--accent);font-style:italic}
.hero-desc{font-family:"Outfit",sans-serif;font-size:22px;line-height:1.45;color:#23363d;max-width:490px;margin-bottom:29px}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}
.hero-days{
  position:absolute;top:55px;left:-10px;width:108px;height:108px;border-radius:50%;
  border:1px solid rgba(184,130,68,.65);display:grid;place-items:center;text-align:center;
  color:#a6753f;background:rgba(255,250,244,.7);z-index:4;animation:float 4s ease-in-out infinite;
}
.hero-days:before,.hero-days:after{content:"";position:absolute;border:1px solid #d5ad7b;border-radius:50%}
.hero-days:before{inset:-10px 12px 8px -9px;transform:rotate(27deg)}
.hero-days:after{inset:9px -10px -8px 9px;transform:rotate(-31deg)}
.hero-days strong{font-family:"Cormorant Garamond";font-size:31px;line-height:.7}
.hero-days small{display:block;font-size:7px;letter-spacing:1.6px;text-transform:uppercase;margin-top:8px}
.hero-scroll{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);z-index:5;text-align:center;font-size:8px;letter-spacing:2px;color:#9b8068;text-transform:uppercase}
.hero-scroll i{display:block;margin-top:9px;font-size:15px}
.hero-side-arrow{position:absolute;left:24px;top:49%;z-index:5;color:#b98c62;font-size:30px}

/* TICKER */
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.ticker-wrap {
  background: var(--ink);
  overflow: hidden;
  white-space: nowrap;
  padding: 12px 0;
  border-top: 1px solid rgba(255,255,255,0.05);
  border-bottom: 1px solid rgba(255,255,255,0.05);
  display: flex;
}
.ticker {
  display: inline-flex;
  align-items: center;
  gap: 32px;
  animation: marquee 25s linear infinite;
}
.ticker span {
  font-family: "Cormorant Garamond", serif;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--accent2);
}
.ticker i {
  color: var(--accent2);
  font-size: 26px;
}

/* ABOUT INTRO (HIDDEN) */
.intro{
  display:none !important;
}
.intro-copy{
  position:relative;
  z-index:2;
  width:50%;
  padding:60px 4%;
  color:var(--ink);
}
.intro-copy h2{margin:10px 0 20px;color:var(--ink)}
.intro-copy .section-copy{color:var(--muted)}
.intro-copy .signature{font-family:"Italianno";font-size:26px;color:var(--accent);margin:17px 0 20px}
.intro-copy .btn-outline{color:var(--ink);background:transparent;border-color:var(--line);backdrop-filter:blur(5px)}
.intro-copy .btn-outline:hover{background:var(--accent);color:#fff;border-color:transparent}
.stamp{position:absolute;left:36px;top:42px;width:92px;height:92px;border:1px solid #d8c5b1;border-radius:50%;background:#fffdf9e8;display:grid;place-items:center;text-align:center;font-size:8px;letter-spacing:1.2px;text-transform:uppercase;z-index:3}

/* PROGRAMS */
.programs{padding:65px 0 75px;background:var(--paper);position:relative;overflow:hidden}
.programs-head{text-align:center;max-width:800px;margin:0 auto 58px}
.programs-head .section-title{margin-top:13px;font-size:clamp(40px,4.5vw,66px)}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.program-card{background:#fff;border:1px solid var(--line);border-radius:14px;position:relative;transition:.45s;box-shadow:0 5px 0 rgba(200,153,85,.03);padding:16px}
.program-card:hover{transform:translateY(-11px);box-shadow:var(--shadow)}
.program-image{height:220px;overflow:hidden;position:relative;border-radius:10px}
.program-image img{height:100%;transition:.8s}
.program-card:hover .program-image img{transform:scale(1.08)}
.duration{
  position:absolute;
  top:-20px;
  left:-20px;
  width:68px;
  height:68px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-family:"Outfit", sans-serif;
  z-index:10;
  transition:.3s ease;
}
.card-pink { background: #fdf5f2; border-color: #f7dcd1; }
.card-pink .duration { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path fill='%23c75c34' d='M50 4 C58.2 4 62.4 11.2 68.5 14.3 C74.6 17.4 82.6 14.6 85.7 20.7 C88.8 26.8 84.7 34.4 89.4 39.5 C94.1 44.6 96 46 96 50 C96 54 94.1 55.4 89.4 60.5 C84.7 65.6 88.8 73.2 85.7 79.3 C82.6 85.4 74.6 82.6 68.5 85.7 C62.4 88.8 58.2 96 50 96 C41.8 96 37.6 88.8 31.5 85.7 C25.4 82.6 17.4 85.4 14.3 79.3 C11.2 73.2 15.3 65.6 10.6 60.5 C5.9 55.4 4 54 4 50 C4 46 5.9 44.6 10.6 39.5 C15.3 34.4 11.2 26.8 14.3 20.7 C17.4 14.6 25.4 17.4 31.5 14.3 C37.6 11.2 41.8 4 50 4 Z'/></svg>"); }

.card-lavender { background: #f5f2fa; border-color: #ebdff7; }
.card-lavender .duration { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path fill='%236d54a5' d='M50 4 C58.2 4 62.4 11.2 68.5 14.3 C74.6 17.4 82.6 14.6 85.7 20.7 C88.8 26.8 84.7 34.4 89.4 39.5 C94.1 44.6 96 46 96 50 C96 54 94.1 55.4 89.4 60.5 C84.7 65.6 88.8 73.2 85.7 79.3 C82.6 85.4 74.6 82.6 68.5 85.7 C62.4 88.8 58.2 96 50 96 C41.8 96 37.6 88.8 31.5 85.7 C25.4 82.6 17.4 85.4 14.3 79.3 C11.2 73.2 15.3 65.6 10.6 60.5 C5.9 55.4 4 54 4 50 C4 46 5.9 44.6 10.6 39.5 C15.3 34.4 11.2 26.8 14.3 20.7 C17.4 14.6 25.4 17.4 31.5 14.3 C37.6 11.2 41.8 4 50 4 Z'/></svg>"); }

.card-sage { background: #f0f5f2; border-color: #cedad4; }
.card-sage .duration { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path fill='%233e6d55' d='M50 4 C58.2 4 62.4 11.2 68.5 14.3 C74.6 17.4 82.6 14.6 85.7 20.7 C88.8 26.8 84.7 34.4 89.4 39.5 C94.1 44.6 96 46 96 50 C96 54 94.1 55.4 89.4 60.5 C84.7 65.6 88.8 73.2 85.7 79.3 C82.6 85.4 74.6 82.6 68.5 85.7 C62.4 88.8 58.2 96 50 96 C41.8 96 37.6 88.8 31.5 85.7 C25.4 82.6 17.4 85.4 14.3 79.3 C11.2 73.2 15.3 65.6 10.6 60.5 C5.9 55.4 4 54 4 50 C4 46 5.9 44.6 10.6 39.5 C15.3 34.4 11.2 26.8 14.3 20.7 C17.4 14.6 25.4 17.4 31.5 14.3 C37.6 11.2 41.8 4 50 4 Z'/></svg>"); }
.duration strong{
  font-size:16px;
  font-weight:700;
  line-height:1;
}
.duration span{
  font-size:7px;
  font-weight:600;
  letter-spacing:1px;
  text-transform:uppercase;
  line-height:1;
  margin-top:2px;
}
.program-card:hover .duration{
  transform:scale(1.06);
}
.program-body{padding:16px 0 8px}
.program-body h3{font-family:"Cormorant Garamond";font-size:27px;font-weight:600;line-height:.95}
.program-body p{margin:10px 0 16px;line-height:1.65}
.program-meta{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 17px}
.program-meta span{font-size:10px;letter-spacing:.6px;text-transform:uppercase;border:1px solid #e6d7c8;border-radius:20px;padding:6px 14px;color:#8d715c;background:#fcf8f3}
.program-meta span i{margin-right:6px}
.card-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;background:transparent;border:1.5px solid #d8c6b4;border-radius:30px;font-size:11px;color:var(--ink);font-weight:700;letter-spacing:.8px;text-transform:uppercase;transition:.3s;margin-top:10px}
.card-link:hover{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 8px 18px rgba(199,92,52,0.2)}
.programs-decoration{position:absolute;right:-130px;bottom:-120px;width:350px;height:350px;border:1px solid #ead6c0;border-radius:50%;opacity:.4}

/* JOURNEY */
.journey{padding:65px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3);position:relative;overflow:hidden}
.journey:before{content:"";position:absolute;left:-100px;top:80px;width:330px;height:330px;border:1px solid #e4cdb2;border-radius:50%;opacity:.55}
.journey-head{text-align:center;max-width:700px;margin:0 auto 62px}
.journey-head .section-title{margin-top:13px}
.journey-flow{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:25px}
.journey-flow:before{content:"";position:absolute;left:11%;right:11%;top:48px;border-top:1px dashed #cba983}
.journey-card{position:relative;text-align:center;z-index:2}
.journey-number{font-family:"Cormorant Garamond";font-size:16px;color:#b27b42;margin-bottom:7px}
.journey-icon{
  width:96px;height:96px;margin:auto;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path fill='%23fffdf9' stroke='%23d9bea0' stroke-width='1.5' d='M50 4 C58.2 4 62.4 11.2 68.5 14.3 C74.6 17.4 82.6 14.6 85.7 20.7 C88.8 26.8 84.7 34.4 89.4 39.5 C94.1 44.6 96 46 96 50 C96 54 94.1 55.4 89.4 60.5 C84.7 65.6 88.8 73.2 85.7 79.3 C82.6 85.4 74.6 82.6 68.5 85.7 C62.4 88.8 58.2 96 50 96 C41.8 96 37.6 88.8 31.5 85.7 C25.4 82.6 17.4 85.4 14.3 79.3 C11.2 73.2 15.3 65.6 10.6 60.5 C5.9 55.4 4 54 4 50 C4 46 5.9 44.6 10.6 39.5 C15.3 34.4 11.2 26.8 14.3 20.7 C17.4 14.6 25.4 17.4 31.5 14.3 C37.6 11.2 41.8 4 50 4 Z'/></svg>") no-repeat center/contain;
  display:grid;place-items:center;color:#b67d42;font-size:31px;
  transition:.5s cubic-bezier(.2,.8,.2,1)
}
.journey-card:hover .journey-icon{transform:rotate(12deg) scale(1.08);color:var(--accent)}
.journey-card h3{font-family:"Cormorant Garamond";font-size:28px;margin:17px 0 6px;color:#9b542f}
.journey-card p{font-size:13px;line-height:1.65;color:var(--muted);max-width:210px;margin:auto}
.journey-tag{display:inline-block;margin-top:15px;font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#a94427;background:#fff5ee;border:1px solid #ebd3c0;border-radius:20px;padding:4px 12px}

/* CREATIONS */
.creations{padding:65px 0;background:#fff}
.creations-layout{display:grid;grid-template-columns:3fr 7fr;gap:55px;align-items:center}
.creations-intro h2{margin:13px 0 18px}
.creation-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.creation{position:relative;overflow:hidden;border-radius:12px;aspect-ratio:4/5}
.creation img{height:100%;width:100%;object-fit:cover;transition:.7s}
.creation:hover img{transform:scale(1.08)}
.creation:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.67))}
.creation span{position:absolute;z-index:2;bottom:11px;left:13px;color:#fff;font-family:"Cormorant Garamond";font-size:20px;font-style:italic}
.creation:nth-child(1){grid-column:span 2;grid-row:span 2}

/* STORIES */
.stories{padding:65px 0 75px;background:#fff;overflow:hidden}
.stories-head{text-align:center;max-width:710px;margin:0 auto 48px}
.stories-head .section-title{margin:13px 0 15px}
.story-carousel{position:relative;overflow:hidden}
.story-track{display:flex;gap:16px;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.story-card{flex:0 0 calc((100% - 48px) / 4);aspect-ratio:4/5;border-radius:12px;overflow:hidden;position:relative;background:#ddd}
.story-card img{height:100%;width:100%;object-fit:cover;transition:.6s}
.story-card:hover img{transform:scale(1.05)}
.story-card:after{display:none}
.play{display:none}
.story-title{display:none}
.story-sub{display:none}
.carousel-nav{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:24px}
.carousel-btn{width:38px;height:38px;border:1px solid #d9c4ad;background:#fff;border-radius:50%;display:grid;place-items:center;color:#a66a3c;cursor:pointer;transition:.3s}
.carousel-btn:hover{background:#23363d;color:#fff;border-color:#23363d}
.carousel-dots{display:flex;gap:6px}
.dot{width:5px;height:5px;border-radius:50%;background:#d8c6b5;transition:.3s}
.dot.active{width:22px;border-radius:10px;background:#23363d}

/* WHY */
.why{padding:65px 0;background:#f6efe6;position:relative;overflow:hidden}
.why-head{text-align:center;max-width:750px;margin:0 auto 55px}
.why-head .section-title{margin:13px 0}
.why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.why-item{
  min-height:245px;background:#fff;border:1px solid #e7d8c9;border-radius:14px;
  padding:32px 17px 25px;text-align:center;transition:.5s;position:relative;overflow:hidden
}
.why-item:before{display:none}
.why-item:hover{transform:translateY(-12px);background:#fff;box-shadow:var(--shadow);border-color:#d9b58e}
.why-icon{position:relative;width:100%;height:140px;margin:0 auto 18px;border-radius:10px;transition:.5s;overflow:hidden}
.why-icon img{width:100%;height:100%;object-fit:cover;border-radius:10px;transition:.5s}
.why-item:hover .why-icon{transform:rotate(-10deg) scale(1.08)}
.why-item h3{position:relative;font-family:"Cormorant Garamond";font-size:21px;line-height:1.05;margin-bottom:10px}
.why-item p{position:relative;line-height:1.7}
.why-line{width:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--gold));margin:17px auto 0;transition:.5s}
.why-item:hover .why-line{width:35px}

/* TESTIMONIAL */
.testimonials{padding:65px 0 75px;background:url("../images/reviews.webp") center/cover no-repeat}
.testimonial-layout{display:grid;grid-template-columns:1fr;max-width:800px;margin:auto;text-align:center;justify-content:center}
.testimonial-slider{position:relative;min-height:360px}
.testimonial-slide{display:none;animation:fade .6s ease}
.testimonial-slide.active{display:block}
.quote-mark{font-family:"Cormorant Garamond";font-size:105px;color:#d0a263;line-height:.45;margin:0 auto}
.quote{font-family:"Cormorant Garamond";font-size:clamp(32px,4vw,52px);line-height:.92;margin:17px auto 25px;max-width:640px}
.quote em{color:var(--accent);font-style:italic}
.author{display:inline-flex;align-items:center;justify-content:center;gap:13px;text-align:left}
.author img{width:55px;height:55px;border-radius:50%}
.author strong{font-family:"Cormorant Garamond";font-size:20px;line-height:1.15;display:block}
.author small{display:none}
.stars{color:#bd8848;letter-spacing:3px;font-size:16px;margin:0 auto 20px;display:flex;justify-content:center;gap:3px;width:100%}
.testimonial-controls{display:flex;justify-content:center;gap:8px;margin-top:30px}
.testimonial-controls button{width:37px;height:37px;border-radius:50%;border:1px solid #d0b99f;background:#f9f2ea;color:#9b653c;cursor:pointer}
.testimonial-controls button:hover{background:var(--accent);color:#fff}
.testimonial-photo{height:430px;display:flex;align-items:end;justify-content:center;position:relative}
.testimonial-photo:before{content:"";position:absolute;bottom:0;width:350px;height:350px;border-radius:50% 50% 0 0;background:linear-gradient(145deg,#e0c6a5,#cda277);opacity:.5}
.testimonial-photo img{position:relative;width:auto;height:430px;object-fit:contain;filter:drop-shadow(0 20px 25px rgba(49,29,17,.15))}

/* CTA */
.cta{position:relative;min-height:470px;display:grid;place-items:center;text-align:center;overflow:hidden}
.cta-bg{position:absolute;inset:0;background:linear-gradient(rgba(37,23,16,.48),rgba(37,23,16,.68)),url("../images/cta.webp") center/cover}
.cta:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.15);margin:18px;pointer-events:none}
.cta-content{position:relative;z-index:2;color:#fff;max-width:800px;padding:75px 20px}
.cta .eyebrow{color:#eac99e}
.cta h2{font-size:clamp(52px,6.3vw,72px);margin:15px 0}
.cta p{font-family:"Cormorant Garamond";font-size:19px;line-height:1.45;color:#f3e5d9;max-width:740px;margin:0 auto 28px}
.cta .btn{padding:9px 28px}
.cta-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.cta .btn-light{background:#fff;color:var(--ink);border:none;box-shadow:0 6px 20px rgba(0,0,0,.12)}
.cta .btn-light:hover{background:#fdf9f4;color:var(--accent);transform:translateY(-2px)}
.cta .btn-outline{color:#fff;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.7);backdrop-filter:blur(5px);box-shadow:none}
.cta .btn-outline:hover{background:#fff;color:#211b18;border-color:transparent;transform:translateY(-2px)}
.wa-icon{font-size:17px}

/* FOOTER */
footer{background:#f6efe6;color:var(--ink);padding:55px 0 25px;border-top:1px solid #ebdcc8}
.footer-grid{display:grid;grid-template-columns:2fr 0.8fr 1fr 1.2fr 1fr;gap:35px;padding-bottom:42px;border-bottom:1px solid #ebdcc8}
.footer-logo{width:94px;height:94px;object-fit:contain;margin-bottom:15px;display:block}
.footer-brand strong{font-family:"Cormorant Garamond";font-size:24px;color:var(--accent);display:block;margin-bottom:12px;letter-spacing:0.5px}
.footer-brand p{font-size:15px;line-height:1.8;color:var(--muted);max-width:310px;margin-top:10px}
footer h4{font-size:14px;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent);margin-bottom:15px}
footer ul{list-style:none;display:grid;gap:9px}
footer li,footer a{font-size:15px;color:var(--muted);transition:.3s}
footer a:hover{color:var(--accent)}
.footer-socials{display:flex;gap:12px;margin-top:20px}
.footer-socials a{
  width:38px;height:38px;border-radius:50%;
  background:#fffdf9;border:1px solid #d9c4ad;
  display:flex;align-items:center;justify-content:center;
  color:var(--muted);font-size:18px;line-height:1;
  transition:.3s
}
.footer-socials a i{
  display:inline-flex;align-items:center;justify-content:center;line-height:1
}
.footer-socials a:hover{
  background:var(--accent);color:#fff !important;border-color:var(--accent)
}
.copyright{display:flex;justify-content:space-between;gap:15px;padding-top:20px;font-size:13px;color:var(--muted)}

/* COURSE CHAT */
.course-chat{
  position:fixed;right:24px;bottom:24px;z-index:1200;width:58px;height:58px;border-radius:50%;
  border:0;background:linear-gradient(135deg,#a94427,#e0a05a);color:#fff;font-size:25px;
  box-shadow:0 15px 35px rgba(169,68,39,.3);cursor:pointer;transition:.35s;
  display:grid;place-items:center;
}
.course-chat:hover{transform:translateY(-5px) scale(1.04)}
.chat-panel{
  position:fixed;right:24px;bottom:94px;width:350px;background:#fffdf9;border:1px solid #e5d8ca;
  border-radius:18px;box-shadow:0 25px 80px rgba(45,27,16,.2);z-index:1199;overflow:hidden;
  opacity:0;visibility:hidden;transform:translateY(18px) scale(.97);transition:.35s
}
.chat-panel.open{opacity:1;visibility:visible;transform:none}
.chat-head{background:linear-gradient(120deg,#8d3b24,#d56a3e);color:#fff;padding:20px}
.chat-head strong{font-family:"Cormorant Garamond";font-size:24px}
.chat-head p{font-size:9px;color:#f7ded1;margin-top:4px}
.chat-body{padding:18px}
.chat-message{background:#f4ece3;border-radius:12px 12px 12px 3px;padding:11px 13px;font-size:10px;color:#625a54;line-height:1.55;margin-bottom:15px}
.chat-form{display:grid;gap:9px}
.chat-form input,.chat-form select{
  width:100%;
  height:44px !important;
  padding:0 14px !important;
  border:1.5px solid #e2d4c5;
  border-radius:8px;
  background:#fff;
  font-size:13.5px !important;
  outline:none;
  box-sizing:border-box !important;
}
.chat-form select {
  height: 38px !important;
  font-family: "Outfit", sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  padding-right: 32px !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2323363d' class='bi bi-chevron-down' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: calc(100% - 14px) center !important;
}
.chat-form input:focus,.chat-form select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(199,92,52,.08)}
.chat-form .btn{justify-content:center;width:100%;padding:12px}
.chat-close{float:right;border:0;background:none;color:#fff;font-size:19px;cursor:pointer}

/* ANIMATIONS */
@keyframes float{50%{transform:translateY(-8px) rotate(2deg)}}
@keyframes fade{from{opacity:0;transform:translateX(15px)}to{opacity:1;transform:none}}

/* ============ CHAPTER RAIL & NUM-MARK (ABOUT PAGE) ============ */
.chapter-rail{position:fixed;left:22px;top:50%;transform:translateY(-50%);z-index:900;display:flex;flex-direction:column;gap:0}
.chapter-rail a{display:flex;align-items:center;gap:12px;padding:9px 0;position:relative}
.chapter-rail .num{font-family:"Cormorant Garamond",serif;font-size:13px;color:#b6a693;transition:.35s;width:20px}
.chapter-rail .stem{width:0;height:1px;background:var(--accent);transition:.35s}
.chapter-rail .label{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:transparent;white-space:nowrap;max-width:0;overflow:hidden;transition:.35s}
.chapter-rail a:hover .label,.chapter-rail a.active .label{color:var(--ink);max-width:160px;margin-left:2px}
.chapter-rail a:hover .stem,.chapter-rail a.active .stem{width:22px}
.chapter-rail a:hover .num,.chapter-rail a.active .num{color:var(--accent);font-size:17px}
@media(max-width:1300px){.chapter-rail{display:none}}

.num-mark{font-family:"Cormorant Garamond",serif;font-size:clamp(90px,13vw,190px);line-height:1;color:var(--ink);opacity:.05;position:absolute;font-weight:600;pointer-events:none;user-select:none}

/* ============ ABOUT HERO — 01 ============ */
.about-hero{position:relative;min-height:64vh;display:flex;align-items:center;overflow:hidden;background:#231b16}
.about-hero-bg{position:absolute;inset:0}
.about-hero-bg img{height:100%;object-position:center 34%;opacity:.42;filter:saturate(.85) contrast(1.05)}
.about-hero-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,17,12,.35) 0%,rgba(24,17,12,.86) 88%)}
.about-hero-swirl{position:absolute;right:-6%;top:-14%;width:560px;opacity:.16;transform:rotate(8deg)}
.about-hero-content{position:relative;z-index:2;padding:150px 0 90px;text-align:center}
.about-hero .num-mark{top:6px;left:50%;transform:translateX(-50%);color:#fff;opacity:.06}
.about-hero .eyebrow{color:var(--accent2);justify-content:center}
.about-hero h1{font-family:"Cormorant Garamond",serif;font-weight:500;color:#fffdf9;font-size:clamp(46px,6.6vw,96px);line-height:.98;letter-spacing:-2.5px;margin:16px auto 24px;max-width:900px}
.about-hero h1 em{color:var(--accent2);font-style:italic}
.about-hero p{color:#e9ddd0;font-size:18px;max-width:560px;line-height:1.75;margin:0 auto}
.crumb{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:32px;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:#a88f7a}
.crumb a{color:#f3e5d9}
.crumb a:hover{color:var(--accent2)}
.crumb i{font-size:9px;color:#7d6650}

/* ============ OUR STORY — 02 ============ */
.story{padding:65px 0 75px;background:var(--paper);position:relative;overflow:hidden}
.story .num-mark{right:0;top:20px}
.story-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;position:relative;z-index:2}
.story-copy .script{font-size:32px;margin-bottom:2px}
.story-copy h2{margin:4px 0 26px}
.story-copy .lead{font-family:"Cormorant Garamond",serif;font-size:22px;font-weight:500;line-height:1.5;color:var(--ink);margin-bottom:18px}
.story-copy .lead::first-letter{font-size:64px;font-weight:600;color:var(--accent);float:left;line-height:.78;padding-right:10px;margin-top:6px}
.story-flow{display:flex;align-items:center;gap:0;margin-top:38px}
.story-flow-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;position:relative}
.story-flow-step .dot{width:54px;height:54px;border-radius:50%;background:#fffdf9;border:1.5px solid var(--line);display:grid;place-items:center;color:var(--accent);font-size:19px;transition:.35s}
.story-flow-step:hover .dot{background:var(--accent);color:#fff;border-color:transparent;transform:scale(1.07)}
.story-flow-step span{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.story-flow-line{flex:1;height:1px;background:repeating-linear-gradient(90deg,#cba983 0,#cba983 5px,transparent 5px,transparent 11px);margin:0 6px 24px}
.story-media{position:relative}
.story-media .frame{border-radius:4px 100px 4px 4px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/4}
.story-media .ribbon{position:absolute;top:26px;right:-14px;background:var(--ink);color:#fffdf9;padding:10px 26px;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;box-shadow:0 12px 26px rgba(24,38,43,.3);z-index:3}

/* ============ OUR STORY — NEW LAYOUT ============ */
.story-layout-new{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative;z-index:2}

/* Left: copy */
.story-copy-new .script{font-size:32px;margin-bottom:2px}
.story-copy-new h2{margin:4px 0 22px}
.story-content-body{
  position:relative;
  padding-left:18px;
  border-left:2px solid var(--accent);
  /* Uses a subtle gradient mask/gradient color for the border */
  border-image: linear-gradient(180deg, var(--accent) 0%, rgba(200,150,90,0.15) 100%) 1;
}
.story-para{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:16px}
.story-para:last-of-type{margin-bottom:0}
.story-para:first-of-type{font-family:"Cormorant Garamond",serif;font-size:18px;font-weight:500;line-height:1.6;color:var(--ink)}
.story-para:first-of-type::first-letter{font-size:54px;font-weight:600;color:var(--accent);float:left;line-height:.78;padding-right:8px;margin-top:5px}

/* Right: single image, uniform radius, increased height */
.story-single-media{position:relative;border-radius:20px;box-shadow:var(--shadow);height:500px}
.story-single-media img{width:100%;height:100%;object-fit:cover;display:block;border-radius:20px;transition:transform .55s ease}
.story-single-media:hover img{transform:scale(1.04)}


/* ============ OUR PHILOSOPHY — 03 ============ */
.philosophy{padding:65px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3);position:relative;overflow:hidden}
.philosophy .num-mark{left:0;bottom:-24px;opacity:.045}
.philosophy-head{text-align:center;max-width:760px;margin:0 auto 22px;position:relative;z-index:2}
.philosophy-head .section-title{margin-top:13px}
.philosophy-lead{text-align:center;max-width:680px;margin:0 auto 58px;font-size:16px;line-height:1.85;position:relative;z-index:2}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:2;border:1px solid #e6d3bd;border-radius:18px;overflow:hidden;background:#fffdf9}
.pillar{padding:44px 28px;text-align:center;border-right:1px solid #e6d3bd;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative}
.pillar:last-child{border-right:0}
.pillar:hover{background:#fff8f0;transform:translateY(-8px);box-shadow:0 12px 30px rgba(184,130,68,0.08)}
.pillar .pillar-icon{width:64px;height:64px;margin:0 auto 22px;border-radius:50%;background:#f6efe6;display:grid;place-items:center;color:var(--accent);font-size:24px;transition:all .4s cubic-bezier(.25,.8,.25,1)}
.pillar:hover .pillar-icon{background:var(--accent);color:#fff;transform:scale(1.1) rotate(12deg)}
.pillar h3{font-family:"Cormorant Garamond",serif;font-size:23px;margin-bottom:12px;color:var(--deep);font-weight:600}
.pillar p{font-size:13.5px;line-height:1.7;color:var(--muted)}

/* ============ THE EXPERIENCE — 04 ============ */
.experience{padding:65px 0 75px;background:var(--paper);position:relative;overflow:hidden}
.experience .num-mark{right:0;top:30px}
.experience-head{text-align:center;max-width:740px;margin:0 auto 30px;position:relative;z-index:2}
.experience-head .section-title{margin-top:13px}
.experience-lead{text-align:center;max-width:660px;margin:0 auto 40px;font-size:16px;line-height:1.85;position:relative;z-index:2}
.filmstrip{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);gap:0;align-items:start}
/* Curved dotted wave path background in orange accent */
.filmstrip:before{
  content:"";
  position:absolute;
  left:10%;
  right:10%;
  top:50px;
  height:90px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100%' height='90' viewBox='0 0 100 90' preserveAspectRatio='none'><path d='M0,25 Q12.5,90 25,45 T50,45 T75,45 T100,25' fill='none' stroke='%23c75c34' stroke-width='1.8' stroke-linecap='round' stroke-dasharray='2 5'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100% 100%;
  z-index: 0;
}
.reel{position:relative;text-align:center;padding:0 10px;z-index:2}
/* Align offset steps cleanly along the wave path */
.reel:nth-child(1){margin-top:0}
.reel:nth-child(2){margin-top:35px}
.reel:nth-child(3){margin-top:0}
.reel:nth-child(4){margin-top:35px}
.reel:nth-child(5){margin-top:0}

.reel-frame{width:120px;height:120px;margin:0 auto 18px;border-radius:50%;overflow:hidden;border:5px solid var(--paper);box-shadow:0 18px 40px rgba(35,54,61,.16);position:relative;z-index:2;background:var(--paper)}
.reel-frame img{width:100%;height:100%;object-fit:cover}
.reel-index{font-family:"Cormorant Garamond",serif;font-size:13px;color:var(--accent);margin-bottom:6px;letter-spacing:1px}
.reel h4{font-family:"Cormorant Garamond",serif;font-size:19px;margin-bottom:6px}
.reel p{font-size:12.5px;line-height:1.6}

/* ============ WHY BAKING LOUNGE — 05 ============ */
.whyus{padding:65px 0 75px;background:#f6efe6;position:relative;overflow:hidden}
.whyus .num-mark{left:-10px;top:10px;opacity:.05}
.whyus-head{text-align:center;max-width:720px;margin:0 auto 45px;position:relative;z-index:2}
.whyus-head .section-title{margin:13px 0}

/* Premium Image Collage Grid Layout - Uniform and Clean vertical/square layout */
.collage-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:320px; /* Uniform height for cleaner card proportions */
  gap:20px;
  position:relative;
  z-index:2;
}

.collage-item{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 8px 30px rgba(35,54,61,0.06);
  cursor:pointer;
}

.collage-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform 0.6s cubic-bezier(0.25,0.8,0.25,1);
}

/* Gradient overlay so text is highly legible */
.collage-item::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(24,38,43,0.1) 0%, rgba(24,38,43,0.4) 60%, rgba(24,38,43,0.85) 100%);
  z-index:1;
  transition:background 0.4s ease;
}

.collage-item:hover img{
  transform:scale(1.05);
}

.collage-item:hover::after{
  background:linear-gradient(180deg, rgba(24,38,43,0.2) 0%, rgba(24,38,43,0.5) 45%, rgba(24,38,43,0.95) 100%);
}

/* Title and Description Info Box */
.collage-info{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  padding:24px;
  z-index:2;
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  height:100%;
}

.collage-info h4{
  font-family:"Cormorant Garamond",serif;
  font-size:24px;
  font-weight:600;
  margin:0;
  color:#fffdfa;
  transform:translateY(0);
  transition:transform 0.4s cubic-bezier(0.25,0.8,0.25,1);
}

/* The description paragraph is hidden by default and slides up on hover */
.collage-desc{
  font-size:13.5px;
  line-height:1.6;
  margin-top:10px;
  color:#ebdccb;
  opacity:0;
  max-height:0;
  overflow:hidden;
  transition:opacity 0.4s ease, max-height 0.4s ease, transform 0.4s ease;
  transform:translateY(15px);
}

.collage-item:hover .collage-desc{
  opacity:1;
  max-height:100px;
  transform:translateY(0);
}

/* Push title slightly up on hover to accommodate description slide in */
.collage-item:hover .collage-info h4{
  transform:translateY(-2px);
}
/* ============ ABOUT FINAL CTA — 06 ============ */
.about-cta{position:relative;padding:130px 0 120px;text-align:center;overflow:hidden;display:block !important;min-height:auto !important}
.about-cta .num-mark{top:14px;left:50%;transform:translateX(-50%);color:#fff;opacity:.05;z-index:1}
.about-cta .cta-bg{position:absolute;inset:0;background:linear-gradient(rgba(37,23,16,.55),rgba(37,23,16,.78)),url("https://images.unsplash.com/photo-1509440159596-0249088772ff?auto=format&fit=crop&w=1600&q=85") center/cover}
.about-cta:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.15);margin:18px;pointer-events:none}
.about-cta .cta-content{position:relative;z-index:2;color:#fff;max-width:800px;margin:auto;padding:0 20px}
.about-cta .eyebrow{color:#eac99e;justify-content:center}
.about-cta h2{font-size:clamp(44px,5.6vw,68px);margin:16px 0 30px}
.about-cta .cta-buttons{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}

/* RESPONSIVE LAYOUTS */
@media(max-width:1000px){
  .nav-links{gap:20px}.nav-actions .btn{display:none}
  .hero h1{font-size:78px}.hero-copy{width:62%}
  .program-grid{grid-template-columns:repeat(3,1fr)}
  .creations-layout{grid-template-columns:1fr}.creations-intro{text-align:center;max-width:620px;margin:auto}
  .creations-intro .btn{margin:auto}.why-grid{grid-template-columns:repeat(3,1fr)}
  .testimonial-layout{gap:30px}
  .story-layout{grid-template-columns:1fr;gap:50px}
  .story-media{max-width:400px;margin:0 auto}
  .story-layout-new{grid-template-columns:1fr;gap:40px}
  .story-badge-col{order:-1;justify-content:flex-start}
  .story-exp-badge{width:100px;height:100px}
  .badge-inner{width:76px;height:76px}
  .badge-num{font-size:22px}
  .story-dual-media{flex-direction:row;gap:3px}
  .story-img-wrap{height:260px}
  .story-img-wrap:first-child,.story-img-wrap:last-child{border-radius:8px}
  .story-img-wrap:first-child{border-top-right-radius:50px}
  .story-img-wrap:last-child{border-bottom-right-radius:50px}
  .pillars{grid-template-columns:repeat(2,1fr)}
  .pillar{border-bottom:1px solid #e6d3bd}
  .pillar:nth-child(2n){border-right:0}
  .filmstrip{grid-template-columns:repeat(3,1fr);row-gap:50px}
  .filmstrip:before{display:none}
  .reel:nth-child(even){margin-top:0}
  .jar-grid{grid-template-columns:repeat(2,1fr)}
  .jar:nth-child(1){grid-column:span 2}
}
@media(max-width:760px){
  .container{width:min(100% - 30px,600px)}
  .nav{height:90px}.nav-links,.nav-actions{display:none}.menu{display:block}
  .brand-logo{width:76px;height:76px}
  .hero{min-height:auto}.hero-bg{height:420px;position:relative}.hero-bg img{object-position:center}
  .hero-content{min-height:auto;display:block}.hero-copy{width:100%;padding:65px 0 55px;position:relative}
  .hero h1{font-size:58px;letter-spacing:-2.5px;line-height:.82}.hero-desc{font-size:17px}
  .hero-days{left:auto;right:8px;top:25px;width:82px;height:82px}.hero-days strong{font-size:25px}
  .hero-side-arrow{display:none}.hero-scroll{display:none}
  .intro{
    background:linear-gradient(180deg, rgba(33,27,24,0.2) 0%, rgba(33,27,24,0.85) 100%), url("https://images.unsplash.com/photo-1575377427642-087cf684f29d?auto=format&fit=crop&w=1400&q=92") center/cover no-repeat;
    min-height:480px;
    align-items:flex-end;
  }
  .intro-copy{
    width:100%;
    padding:100px 20px 40px;
  }
  .stamp{
    right:20px;
    left:auto;
  }
  .story-track{display:flex;gap:12px}.story-card{flex:0 0 calc((100% - 42px)/2);aspect-ratio:9/16;height:auto}
  .story-card:nth-child(n+3){display:none}
  .why-grid{grid-template-columns:1fr 1fr}.why-item{min-height:220px}
  .testimonial-layout{grid-template-columns:1fr;gap:20px}.testimonial-slider{min-height:365px}.testimonial-photo{height:340px}.testimonial-photo img{height:340px}
  .footer-grid{grid-template-columns:1fr 1fr}.chat-panel{right:15px;bottom:88px;width:calc(100% - 30px)}
  .about-hero{min-height:auto}.about-hero-content{padding:100px 0 60px}
  .about-hero h1{font-size:44px;letter-spacing:-1.5px}
  .story,.philosophy,.experience,.whyus{padding:80px 0}
  .story-flow{flex-wrap:wrap;justify-content:center}
  .story-flow-line{display:none}
  .story-dual-media{flex-direction:column;gap:3px}
  .story-img-wrap{height:200px}
  .filmstrip{grid-template-columns:repeat(2,1fr)}
  .about-cta{padding:90px 0}
}
@media(max-width:480px){
  .hero h1{font-size:51px}.hero-buttons .btn{width:100%;justify-content:center}
  .journey-flow{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}
  .why-item{min-height:205px}.testimonial-slider{min-height:390px}
  .footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column}
  .about-hero h1{font-size:35px}
  .pillars{grid-template-columns:1fr}
  .pillar{border-right:0}
  .jar-grid{grid-template-columns:1fr 1fr}
}

/* =============================================
   ABOUT PAGE BREADCRUMB HERO BACKGROUNDS
   ============================================= */
.about-intro {
  background: url("../images/bc.webp") center/cover no-repeat !important;
  min-height: 240px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.about-intro:after {
  display: none !important;
}
.about-intro .intro-copy {
  padding: 40px 20px !important;
  width: 60% !important;
}
.about-intro .section-title {
  font-size: clamp(36px, 5vw, 60px) !important;
}

/* =============================================
   CONTACT PAGE HERO BACKGROUND
   ============================================= */
.contact-hero {
  position: relative !important;
  min-height: 240px !important;
  display: flex !important;
  align-items: center !important;
  text-align: left !important;
}
.contact-hero-inner {
  padding: 40px 0 40px 38px !important; /* Shifted left by 10px */
  max-width: 1200px !important;
  margin: 0 auto !important; /* Centered container flow matching other grids */
}
.contact-hero-inner .eyebrow {
  color: var(--accent) !important; /* Eyebrow in theme accent */
  justify-content: flex-start !important;
}
.contact-hero-inner .eyebrow:before {
  display: none !important;
}
.contact-hero-inner .eyebrow:after {
  display: none !important;
}
.contact-hero-inner h1 {
  color: var(--ink) !important; /* Primary theme text colour */
  font-size: clamp(32px, 4.5vw, 48px) !important;
  margin: 8px 0 12px !important;
  text-align: left !important;
}
.contact-hero-inner p {
  color: var(--muted) !important; /* Primary muted text colour */
  font-size: 15px !important;
  line-height: 1.6 !important;
  max-width: 580px !important;
  text-align: left !important;
}
.contact-hero-ctas {
  justify-content: flex-start !important;
}
.contact-hero-bg:before {
  background: url("../images/bc.webp") center/cover no-repeat !important;
  opacity: 1 !important;
}
.contact-hero-bg:after {
  display: none !important;
}

/* =============================================
   COURSES PAGE HERO BACKGROUND
   ============================================= */
.crs-hero {
  min-height: 240px !important;
}
.crs-hero-inner {
  padding: 60px 0 40px !important;
}
.crs-hero-bg:before {
  background: url("../images/bc.webp") center/cover no-repeat !important;
  opacity: 1 !important;
}
.crs-hero-bg:after {
  display: none !important;
}

/* =============================================
   CREATIONS PAGE HERO BACKGROUND
   ============================================= */
.crt-hero {
  min-height: 240px !important;
}
.crt-hero-inner {
  padding: 60px 0 40px !important;
}
.crt-hero-bg {
  background: url("../images/bc.webp") center/cover no-repeat !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}
.crt-hero-overlay {
  display: none !important;
}
@media(max-width:760px){
  .container{width:min(100% - 30px,600px)}
  .nav{height:90px}.nav-links,.nav-actions{display:none}.menu{display:block}
  .brand-logo{width:76px;height:76px}
  .hero{min-height:auto}.hero-bg{height:420px;position:relative}.hero-bg img{object-position:center}
  .hero-content{min-height:auto;display:block}.hero-copy{width:100%;padding:65px 0 55px;position:relative}
  .hero h1{font-size:58px;letter-spacing:-2.5px;line-height:.82}.hero-desc{font-size:17px}
  .hero-days{left:auto;right:8px;top:25px;width:82px;height:82px}.hero-days strong{font-size:25px}
  .hero-side-arrow{display:none}.hero-scroll{display:none}
  .intro{
    background:linear-gradient(180deg, rgba(33,27,24,0.2) 0%, rgba(33,27,24,0.85) 100%), url("https://images.unsplash.com/photo-1575375427642-087cf684f29d?auto=format&fit=crop&w=1400&q=92") center/cover no-repeat;
    min-height:480px;
    align-items:flex-end;
  }
  .intro-copy{
    width:100%;
    padding:100px 20px 40px;
  }
  .stamp{
    right:20px;
    left:auto;
    top:20px;
  }
  .programs,.journey,.creations,.stories,.why,.testimonials{padding:78px 0}
  .program-grid{grid-template-columns:1fr}.program-image{height:245px}
  .journey-flow{grid-template-columns:1fr 1fr;gap:45px 8px}.journey-flow:before{display:none}
  .creation-grid{grid-template-columns:repeat(3,1fr);gap:8px}
  .creation:aspect-ratio{1/1;height:auto}
  .creation:nth-child(1){grid-column:span 2;grid-row:span 2}
  .creation:nth-child(5){grid-column:span 1;grid-row:span 1}
  .story-track{display:flex;gap:12px}.story-card{flex:0 0 calc((100% - 42px)/2);aspect-ratio:9/16;height:auto}
  .story-card:nth-child(n+3){display:none}
  .why-grid{grid-template-columns:1fr 1fr}.why-item{min-height:220px}
  .testimonial-layout{grid-template-columns:1fr;gap:20px}.testimonial-slider{min-height:365px}.testimonial-photo{height:340px}.testimonial-photo img{height:340px}
  .footer-grid{grid-template-columns:1fr 1fr}.chat-panel{right:15px;bottom:88px;width:calc(100% - 30px)}
  .about-hero{min-height:auto}.about-hero-content{padding:100px 0 60px}
  .about-hero h1{font-size:44px;letter-spacing:-1.5px}
  .story,.philosophy,.experience,.whyus{padding:80px 0}
  .story-flow{flex-wrap:wrap;justify-content:center}
  .story-flow-line{display:none}
  .story-dual-media{flex-direction:column;gap:3px}
  .story-img-wrap{height:200px}
  .filmstrip{grid-template-columns:repeat(2,1fr)}
  .about-cta{padding:90px 0}
}
@media(max-width:480px){
  .hero h1{font-size:51px}.hero-buttons .btn{width:100%;justify-content:center}
  .journey-flow{grid-template-columns:1fr}.why-grid{grid-template-columns:1fr}
  .why-item{min-height:205px}.testimonial-slider{min-height:390px}
  .footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column}
  .about-hero h1{font-size:35px}
  .pillars{grid-template-columns:1fr}
  .pillar{border-right:0}
  .filmstrip{grid-template-columns:1fr 1fr}
  .jar-grid{grid-template-columns:1fr 1fr}
}mns:1fr 1fr}
}

/* =============================================
   CONTACT PAGE
   ============================================= */

/* — Hero — */
.contact-hero{position:relative;min-height:56vh;display:flex;align-items:center;overflow:hidden}
.contact-hero-bg{position:absolute;inset:0;background:linear-gradient(125deg,#18262b 0%,#3b1f13 55%,#5a2a14 100%)}
.contact-hero-bg:before{content:"";position:absolute;inset:0;background:url("../images/cta.webp") center/cover no-repeat;opacity:.22}
.contact-hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(224,165,94,.14),transparent 65%)}
.contact-hero-inner{position:relative;z-index:2;padding:130px 0 100px;max-width:700px}
.contact-hero-inner .eyebrow{color:#eac99e}
.contact-hero-inner .section-title{color:#fffdf9;margin:14px 0 20px}
.contact-hero-inner p{color:#e0d0c0;font-size:17px;line-height:1.8;max-width:540px}
.contact-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

/* — Quick Info Cards — */
.contact-cards-section{background:var(--paper);padding:80px 0 60px;margin-top:-1px}
.contact-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.contact-card{background:#fff;border:1px solid #e7d8c9;border-radius:16px;padding:32px;transition:all .4s cubic-bezier(.25,.8,.25,1);position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(169,68,39,.04)}
.contact-card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent2));transform:scaleX(0);transform-origin:left;transition:.4s}
.contact-card:hover:before{transform:scaleX(1)}
.contact-card:hover{transform:translateY(-8px);background:#fff;border-color:var(--accent);box-shadow:0 20px 40px rgba(169,68,39,.09)}
.contact-card-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#a94427,#e0a05a);color:#fff;display:grid;place-items:center;font-size:22px;margin-bottom:18px;box-shadow:0 8px 20px rgba(169,68,39,.22)}
.contact-card h3{font-family:"Cormorant Garamond",serif;font-size:21px;margin-bottom:10px}
.contact-card p{font-size:14px;line-height:1.75;color:var(--muted)}
.contact-card-link{display:inline-flex;align-items:center;gap:6px;margin-top:16px;font-size:12px;font-weight:700;letter-spacing:.8px;color:var(--accent);text-transform:uppercase;transition:.3s}
.contact-card-link:hover{gap:10px}

/* — Enquiry Section — */
.enquiry-section{padding:110px 0;background:var(--cream)}
.enquiry-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}
.enquiry-form-wrap .eyebrow{margin-bottom:4px}
.enquiry-form-wrap .section-title{margin:10px 0 0}
.contact-form{display:grid;gap:18px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.form-row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.form-group{display:flex;flex-direction:column;gap:7px}
.form-group label{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--ink)}
.form-group input,
.form-group select,
.form-group textarea{
  border:1.5px solid #e2d4c5;border-radius:10px;
  background:#fff;font-size:14px;color:var(--ink);outline:none;
  transition:.3s;resize:vertical;font-family:"Outfit",sans-serif;
  box-sizing:border-box !important;
}
.form-group input,
.form-group select{
  height:48px !important;
  padding:0 16px !important;
}
.form-group textarea{
  padding:13px 16px !important;
}
.form-group select {
  padding-right: 32px !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2323363d' class='bi bi-chevron-down' viewBox='0 0 16 16'><path fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/></svg>");
  background-repeat: no-repeat;
  background-position: calc(100% - 14px) center;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(199,92,52,.08)}
.form-group input::placeholder,
.form-group textarea::placeholder{color:#b8a898}
.contact-form .btn{width:fit-content;margin-top:6px;padding:14px 36px}
.form-success{display:none;align-items:center;gap:10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:14px 18px;color:#15803d;font-size:14px;margin-top:10px}
.form-success.show{display:flex}
.form-success i{font-size:20px}

/* Map & Hours */
.enquiry-aside{display:flex;flex-direction:column;gap:22px;position:sticky;top:130px}
.map-embed{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);height:320px}
.map-embed iframe{width:100%;height:100%;border:0}
.hours-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:28px 26px}
.hours-header{display:flex;align-items:center;gap:11px;margin-bottom:20px;font-size:15px;font-weight:700;color:var(--ink)}
.hours-header i{color:var(--accent);font-size:18px}
.hours-list{list-style:none;display:grid;gap:12px}
.hours-list li{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);padding-bottom:12px;border-bottom:1px dashed var(--line)}
.hours-list li:last-child{border-bottom:0;padding-bottom:0}
.hours-list .open{color:#166534;font-weight:600;font-size:13px}
.hours-list .closed{color:#b91c1c;font-weight:600;font-size:13px}
.hours-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;font-size:12.5px;color:var(--muted);line-height:1.6}
.hours-note i{color:var(--accent);font-size:14px;margin-top:2px;flex-shrink:0}

/* — Courses Quick Links — */
.contact-courses{padding:100px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3)}
.contact-courses-head{text-align:center;margin-bottom:60px}
.contact-course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.contact-course-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:40px 32px 36px;position:relative;overflow:hidden;transition:.4s;display:flex;flex-direction:column;gap:0}
.contact-course-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.contact-course-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.cc-badge{position:absolute;top:22px;right:22px;background:linear-gradient(110deg,var(--accent),var(--accent2));color:#fff;font-size:10px;font-weight:700;letter-spacing:1px;padding:5px 12px;border-radius:20px;text-transform:uppercase}
.cc-icon{width:54px;height:54px;border-radius:14px;background:linear-gradient(135deg,#fdeee7,#faf2e8);color:var(--accent);display:grid;place-items:center;font-size:24px;margin-bottom:20px}
.contact-course-card h3{font-family:"Cormorant Garamond",serif;font-size:26px;line-height:1.05;margin-bottom:14px}
.contact-course-card p{font-size:14px;line-height:1.75;color:var(--muted);margin-bottom:22px;flex:1}
.cc-tags{list-style:none;display:grid;gap:8px;margin-bottom:28px}
.cc-tags li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink);font-weight:500}
.cc-tags i{color:var(--accent);font-size:15px}

/* — FAQ — */
.contact-faq{padding:65px 0 75px;background:var(--paper)}
.faq-layout{display:grid;grid-template-columns:.45fr .55fr;gap:80px;align-items:start}
.faq-right{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;background:none;border:0;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 4px;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left;transition:.3s}
.faq-q:hover{color:var(--accent)}
.faq-icon{font-size:18px;color:var(--accent);flex-shrink:0;transition:.35s}
.faq-q[aria-expanded="true"] .faq-icon{transform:rotate(45deg)}
.faq-a{font-size:14px;line-height:1.85;color:var(--muted);padding:0 4px 22px;display:none}
.faq-a.open{display:block;animation:fade .35s ease}

/* — Social Strip — */
.social-strip{
  padding:50px 0; /* Reduced height of section */
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #18262b 0%, #27353f 100%); /* Deep teal blue dominant */
}
/* High transparent checked background pattern */
.social-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: 
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 24px 24px;
  z-index: 1;
}
.social-strip-inner{
  position: relative;
  z-index: 2;
  display:grid;
  grid-template-columns:1fr auto;
  gap:60px;
  align-items:center;
}
.social-strip-text .script{color:#b8c8d0}
.social-strip-text .section-title{color:#fffdf9;margin-top:10px}
.social-strip-links{
  display:flex;
  gap:16px;
}
.social-big{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center; /* Centers all content vertically in the card */
  /* Creative square glass card styling */
  width: 140px;
  height: 140px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 16px; /* slightly rounded square */
  padding: 20px 10px; /* Better padding distribution */
  color: #fff;
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
  text-align: center;
  backdrop-filter: blur(12px);
  box-shadow: none; /* No shadow */
  position: relative;
}
.social-big i{
  font-size:30px;
  color:#9eb0ba; /* Teal tone */
  margin-bottom:0; /* Uniform space under icon */
  transition: transform 0.4s ease, color 0.4s ease;
}
.social-big span{
  font-size:13.5px;
  font-weight:700;
  letter-spacing:.5px;
  display:block;
  margin-bottom:0; /* Uniform space under title */
}
.social-big small{
  font-size:10px;
  color:rgba(255,255,255,.55);
  letter-spacing:.3px;
  display:block;
}
.social-big::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255,255,255,0.1), transparent);
  opacity: 0;
  transition: opacity 0.4s ease;
}
.social-big:hover{
  background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.25);
  transform: translateY(-4px);
  box-shadow: none; /* No shadow when hover */
}
.social-big:hover::before {
  opacity: 1;
}
.social-big:hover i {
  transform: scale(1.1);
  color:#fff;
}

/* ─ Contact Responsive ─ */
@media(max-width:1000px){
  .contact-cards-grid{grid-template-columns:1fr 1fr;gap:20px}
  .enquiry-layout{grid-template-columns:1fr;gap:50px}
  .enquiry-aside{position:static}
  .contact-course-grid{grid-template-columns:1fr 1fr}
  .faq-layout{grid-template-columns:1fr;gap:50px}
  .social-strip-inner{grid-template-columns:1fr;gap:40px}
  .social-strip-links{justify-content:center}
}
@media(max-width:760px){
  .contact-hero-inner{padding:100px 0 70px}
  .contact-cards-grid{grid-template-columns:1fr;gap:16px}
  .form-row, .form-row-3{grid-template-columns:1fr}
  .contact-course-grid{grid-template-columns:1fr}
  .social-strip-links{flex-direction:column;align-items:center}
  .social-big{width:100%;max-width:320px;flex-direction:row;padding:20px 28px;gap:16px;text-align:left}
}
@media(max-width:480px){
  .contact-hero-ctas{flex-direction:column}
  .contact-hero-ctas .btn{justify-content:center}
}

.about-intro{
  position:relative;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:480px;
  background: url("../images/home-about.webp") center/cover no-repeat;
}

/* =============================================
   COURSES PAGE
   ============================================= */

/* ─ 01. Hero ─ */
.crs-hero{position:relative;overflow:hidden;background:#1a120d}
.crs-hero-bg{
  position:absolute;inset:0;
  background:linear-gradient(125deg,#1a120d 0%,#331b10 45%,#241610 100%);
}
.crs-hero-bg:before{content:"";position:absolute;inset:0;background:url("../images/hb.webp") center/cover no-repeat;opacity:.12}
.crs-hero-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 60%,rgba(224,165,94,.1),transparent 60%)}
.crs-hero-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:58fr 42fr;
  gap:40px;align-items:center;
  padding:120px 0 100px;
}
.crs-hero-copy .eyebrow{color:var(--accent)}
.crs-hero-copy .section-title{color:var(--ink);margin:14px 0 20px}
.crs-hero-copy p{color:var(--muted);font-size:17px;line-height:1.8;max-width:460px}
.crs-hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.crs-hero-badges span{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(169,68,39,0.06);border:1px solid rgba(169,68,39,0.15);
  color:var(--ink);font-size:11px;font-weight:600;letter-spacing:.6px;
  padding:8px 16px;border-radius:30px;
}
.crs-hero-badges span i{color:var(--accent)}

/* Hero Form */
.crs-hero-form{
  background:#fffdf9;border-radius:22px;
  padding:34px 30px 28px;box-shadow:0 30px 80px rgba(0,0,0,.3);
}
.crs-form-head{margin-bottom:22px}
.crs-form-head strong{font-family:"Cormorant Garamond",serif;font-size:22px;color:var(--ink);display:block;margin-bottom:5px}
.crs-form-head p{font-size:13px;color:var(--muted)}
.crs-hero-form .contact-form{
  gap:12px;
}
.crs-hero-form .contact-form .form-row{
  gap:12px;
}
.crs-hero-form .contact-form .form-group{
  gap:5px;
}
.crs-hero-form .contact-form .form-group label{
  font-size:10px;
  letter-spacing:.8px;
}
.crs-hero-form .contact-form .form-group input,
.crs-hero-form .contact-form .form-group select{
  height: 42px !important;
  padding: 0 14px !important;
  font-size: 13.5px !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}
.crs-hero-form .contact-form .btn{
  padding:10px 24px;
  margin-top:2px;
}

/* ─ 02. Featured Masterclass ─ */
.featured-course{padding:78px 0;background:var(--paper)}
.featured-inner{
  display:grid;grid-template-columns:1fr 1fr;
  gap:70px;align-items:center;
  background:var(--cream);border:1px solid var(--line);
  border-radius:28px;overflow:hidden;
}
.featured-img{position:relative;height:100%;min-height:480px}
.featured-img img{height:100%;object-fit:cover;border-radius:0}
.featured-flag{
  position:absolute;top:24px;left:24px;
  background:linear-gradient(110deg,var(--accent),var(--accent2));
  color:#fff;font-size:11px;font-weight:700;letter-spacing:.8px;
  padding:8px 18px;border-radius:8px;
  display:inline-flex;align-items:center;gap:7px;
}
.featured-body{padding:50px 50px 50px 10px}
.featured-body .eyebrow{margin-bottom:10px}
.featured-meta{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 22px}
.featured-meta span{
  font-size:12px;font-weight:600;color:#8d715c;
  display:inline-flex;align-items:center;gap:6px;
  background:#f5ece2;border:1px solid #e6d3bd;
  padding:7px 15px;border-radius:30px;
}
.featured-desc{font-size:15px;line-height:1.85;color:var(--muted);margin-bottom:22px}
.featured-includes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}
.featured-includes span{
  display:flex;align-items:center;gap:8px;
  font-size:13px;font-weight:500;color:var(--ink)
}
.featured-includes i{color:#2d7a3a;font-size:15px}
.featured-price{display:flex;align-items:baseline;gap:8px;margin-bottom:28px}
.featured-price strong{font-family:"Outfit",sans-serif;font-size:46px;font-weight:700;color:var(--accent);line-height:1}
.featured-price span{font-size:14px;color:var(--muted)}

/* ─ 03. All Courses Grid ─ */
.all-courses{padding:60px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3)}
.all-courses-head{text-align:center;margin-bottom:40px}
.all-courses-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.course-detail-card{
  background:var(--paper);border:1px solid var(--line);
  border-radius:22px;overflow:hidden;transition:.4s;
  display:flex;
  flex-direction:column;
  padding:24px;
  gap:20px;
}
.course-detail-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.cdc-top {
  display: flex;
  flex-direction: row;
  gap: 24px;
  align-items: flex-start;
}
.cdc-image{position:relative;width:180px;height:180px;border-radius:16px;overflow:hidden;flex-shrink:0}
.cdc-image img{width:100%;height:100%;object-fit:cover;transition:.5s}
.course-detail-card:hover .cdc-image img{transform:scale(1.05)}
.cdc-pill{
  position:absolute;bottom:14px;left:14px;
  font-size:11px;font-weight:700;letter-spacing:.8px;
  padding:6px 16px;border-radius:30px;color:#fff;text-transform:uppercase;
}
.card-pink-pill{background:linear-gradient(110deg,#c75c34,#e8834e)}
.card-lavender-pill{background:linear-gradient(110deg,#6d54a5,#9b7ecc)}
.card-sage-pill{background:linear-gradient(110deg,#3e6d55,#5fa07a)}

/* Course Detail Card Theme Color Overrides */
.course-detail-card.card-pink {
  background: #fdf5f2;
  border-color: #f7dcd1;
}
.course-detail-card.card-pink .cdc-sub i {
  color: #D55034;
}
.course-detail-card.card-pink .cdc-bottom {
  border-top-color: #f7dcd1;
}
.course-detail-card.card-pink .cdc-tags span {
  border-color: #f7dcd1;
  background: #fff;
  color: #c75c34;
}
.course-detail-card.card-pink .card-btn {
  background: #D55034;
  color: #fff;
  border: none;
}

.course-detail-card.card-lavender {
  background: #f5f2fa;
  border-color: #ebdff7;
}
.course-detail-card.card-lavender .cdc-sub i {
  color: #6d54a5;
}
.course-detail-card.card-lavender .cdc-bottom {
  border-top-color: #ebdff7;
}
.course-detail-card.card-lavender .cdc-tags span {
  border-color: #ebdff7;
  background: #fff;
  color: #6d54a5;
}
.course-detail-card.card-lavender .card-btn {
  background: #6d54a5;
  color: #fff;
  border: none;
}

.course-detail-card.card-sage {
  background: #f0f5f2;
  border-color: #cedad4;
}
.course-detail-card.card-sage .cdc-sub i {
  color: #3e6d55;
}
.course-detail-card.card-sage .cdc-bottom {
  border-top-color: #cedad4;
}
.course-detail-card.card-sage .cdc-tags span {
  border-color: #cedad4;
  background: #fff;
  color: #3e6d55;
}
.course-detail-card.card-sage .card-btn {
  background: #3e6d55;
  color: #fff;
  border: none;
}
.cdc-info {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}
.cdc-info h3{font-family:"Cormorant Garamond",serif;font-size:26px;font-weight:600;line-height:1.05;margin-bottom:12px;color:var(--ink)}
.cdc-sub{
  font-size:12px;color:var(--muted);font-weight:600;
  display:flex;align-items:center;gap:6px;
  margin-bottom:12px !important;
  letter-spacing:.3px
}
.cdc-sub i{color:var(--accent)}
.cdc-info p{font-size:14px;line-height:1.75;color:var(--muted);margin:0}
.cdc-bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-top: 1px solid var(--line);
  padding-top: 20px;
}
.cdc-tags{display:flex;flex-wrap:wrap;gap:8px}
.cdc-tags span{
  font-size:10px;letter-spacing:.6px;text-transform:uppercase;
  border:1px solid #e6d7c8;border-radius:20px;
  padding:6px 13px;color:#8d715c;background:#fcf8f3;
  display:inline-flex;align-items:center;gap:5px
}
.card-btn {
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  display: flex !important;
  padding: 12px !important;
}

/* ─ 04. What You'll Learn ─ */
.what-learn{padding:78px 0;background:var(--paper)}
.what-learn-layout{display:grid;grid-template-columns:.4fr .6fr;gap:80px;align-items:start}
.what-learn-copy{position:sticky;top:120px;align-self:start}
.what-learn-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.learn-item{
  position:relative;
  height: 220px;
  border-radius: 16px;
  overflow: hidden;
  background: #1a120d;
  border: 1px solid #e7d8c9;
  box-shadow: 0 8px 24px rgba(169,68,39,0.02);
  transition: all 0.4s cubic-bezier(.25,.8,.25,1);
}
.learn-item:hover{
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(169,68,39,0.12);
  border-color: var(--accent);
}
.learn-item::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(26,18,13,0.95) 0%, rgba(26,18,13,0.4) 60%, transparent 100%);
  z-index: 2;
}
.learn-img{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.learn-img img{width: 100%;height: 100%;object-fit: cover;transition: transform 0.5s ease}
.learn-item:hover .learn-img img{transform: scale(1.08)}
.learn-body{
  position: absolute;
  inset: auto 0 0 0;
  padding: 20px;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.learn-num{
  display: none !important;
}
.learn-item h4{
  font-family: "Cormorant Garamond", serif;
  font-size: 20px;
  font-weight: 600;
  color: #fffdf9;
  line-height: 1.2;
  margin: 0;
}
.learn-item p{
  font-size: 13px;
  line-height: 1.5;
  color: #e0d0c0;
  margin: 6px 0 0;
}

/* ─ 05. Why Choose ─ */
.crs-why{padding:60px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3)}
.crs-why-layout{display:block}
.crs-why-features{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
  border:none;
}
.crs-quote{
  margin-top:40px;padding:24px 28px;
  border-left:3px solid var(--accent);
  background:var(--paper);border-radius:0 14px 14px 0;
  font-family:"Cormorant Garamond",serif;font-size:20px;
  line-height:1.45;color:var(--ink);
}
.crs-quote em{color:var(--accent);font-style:italic}
.crs-quote cite{display:block;margin-top:14px;font-size:12px;letter-spacing:.8px;font-style:normal;text-transform:uppercase;color:var(--muted)}
.crs-feature{
  background:#fff;
  border:1px solid #e7d8c9;
  border-radius:16px;
  padding:24px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  transition:all .35s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.crs-feature:hover{
  transform:translateY(-5px);
  border-color:var(--accent);
  box-shadow:0 12px 30px rgba(169,68,39,0.08);
  background:#fff;
}
.crs-feat-icon{
  width:44px;
  height:44px;
  border-radius:10px;
  flex-shrink:0;
  background:linear-gradient(135deg,#a94427,#e0a05a);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:18px;
  transition:.3s;
}
.crs-feature:hover .crs-feat-icon{transform:scale(1.08) rotate(-5deg)}
.crs-feature h4{font-family:"Cormorant Garamond",serif;font-size:19px;margin:0 0 6px;line-height:1.2;color:var(--ink)}
.crs-feature p{font-size:13.5px;line-height:1.65;color:var(--muted);margin:0}

/* ─ CRS CTA override ─ */
.crs-cta .cta-content{padding:90px 20px}

/* ─ Courses Responsive ─ */
@media(max-width:1100px){
  .crs-hero-inner{grid-template-columns:55fr 45fr;gap:30px}
  .featured-inner{grid-template-columns:1fr;min-height:auto}
  .featured-img{min-height:340px}
  .featured-body{padding:36px 36px 40px}
  .what-learn-layout{grid-template-columns:1fr;gap:50px}
  .crs-why-layout{grid-template-columns:1fr;gap:50px}
}
@media(max-width:900px){
  .crs-hero-inner{grid-template-columns:1fr;padding:90px 0 60px}
  .crs-hero-copy p{max-width:100%}
  .crs-hero-form{max-width:520px}
  .all-courses-grid{grid-template-columns:1fr;gap:24px}
  .cdc-top{flex-direction:column;align-items:stretch;gap:16px}
  .cdc-image{width:100%;height:240px}
  .what-learn-grid{grid-template-columns:1fr}
  .crs-why-features{grid-template-columns:repeat(2, 1fr);gap:20px}
}
@media(max-width:700px){
  .crs-hero-inner{padding:80px 0 50px}
  .all-courses-grid{grid-template-columns:1fr}
  .featured-includes{grid-template-columns:1fr}
  .featured-body{padding:28px}
  .crs-why-features{grid-template-columns:1fr}
  .what-learn-layout{grid-template-columns:1fr}
}

/* =============================================
   CREATIONS PAGE
   ============================================= */

/* ─ 01. Hero ─ */
.crt-hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;background:#0f0a07}
.crt-hero-bg{
  position:absolute;inset:0;
  background:url("https://images.unsplash.com/photo-1578985545062-69928b1d9587?auto=format&fit=crop&w=1800&q=85") center/cover no-repeat;
  opacity:.28;transform:scale(1.04);animation:heroSlow 18s ease-in-out infinite alternate;
}
@keyframes heroSlow{to{transform:scale(1.08) translateX(12px)}}
.crt-hero-overlay{position:absolute;inset:0;background:linear-gradient(115deg,rgba(15,10,7,.92) 40%,rgba(15,10,7,.55) 100%)}
.crt-hero-inner{position:relative;z-index:2;display:block;padding:120px 0 100px}
.crt-hero-copy{max-width:680px}
.crt-hero-copy .eyebrow{color:var(--accent) !important}
.crt-hero-copy .section-title{color:var(--ink) !important;margin:14px 0 20px;font-size:clamp(32px,4.2vw,48px) !important;line-height:1.15;letter-spacing:-1px}
.crt-hero-copy p{color:var(--muted) !important;font-size:15px !important;line-height:1.75 !important;max-width:520px !important}
.crt-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.btn-outline-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5);box-shadow:none}
.btn-outline-light:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff;transform:translateY(-2px)}

/* Hero Mosaic */
.crt-hero-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:480px}
.crt-mosaic-item{position:relative;border-radius:16px;overflow:hidden;cursor:pointer}
.crt-mosaic-item img{width:100%;height:100%;object-fit:cover;transition:.6s}
.crt-mosaic-item:hover img{transform:scale(1.07)}
.crt-mosaic-item span{
  position:absolute;bottom:14px;left:14px;
  background:rgba(0,0,0,.5);backdrop-filter:blur(8px);
  color:#fff;font-size:11px;font-weight:700;letter-spacing:.8px;
  padding:6px 14px;border-radius:30px;text-transform:uppercase;
  border:1px solid rgba(255,255,255,.2)
}
.crt-m1{grid-row:span 2}
.crt-m2,.crt-m3{}

/* ─ 02. Featured Creations ─ */
.featured-creations{padding:60px 0;background:var(--paper)}
.featured-crt-head{text-align:center;margin-bottom:60px}
/* Main 2-col grid */
.fc-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;height:500px;margin-bottom:12px}
.fc-main,.fc-small{position:relative;overflow:hidden;border-radius:18px;cursor:pointer}
.fc-main img,.fc-small img{width:100%;height:100%;object-fit:cover;transition:.6s}
.fc-main:hover img,.fc-small:hover img{transform:scale(1.06)}
.fc-side{display:flex;flex-direction:column;gap:12px}
.fc-small{flex:1}
.fc-overlay{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(15,10,7,.82) 0%,rgba(15,10,7,.1) 55%);
  padding:22px;display:flex;flex-direction:column;justify-content:flex-end;
  opacity:0;transition:.4s
}
.fc-main:hover .fc-overlay,.fc-small:hover .fc-overlay,.fc-trio-item:hover .fc-overlay{opacity:1}
.fc-tag{
  display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
  background:var(--accent);color:#fff;font-size:10px;font-weight:700;
  letter-spacing:.8px;padding:5px 13px;border-radius:20px;text-transform:uppercase;margin-bottom:8px
}
.fc-overlay h3{font-family:"Cormorant Garamond",serif;font-size:22px;color:#fff;line-height:1.1}
/* Trio row */
.fc-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;height:260px}
.fc-trio-item{position:relative;overflow:hidden;border-radius:18px;cursor:pointer}
.fc-trio-item img{width:100%;height:100%;object-fit:cover;transition:.6s}
.fc-trio-item:hover img{transform:scale(1.06)}

/* ─ 03. Gallery ─ */
.crt-gallery{padding:60px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3)}
.crt-gallery-head{text-align:center;margin-bottom:50px}
.gallery-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:50px}
.gf-btn{
  background:#fff;border:1.5px solid #e2d4c5;border-radius:30px;
  padding:9px 20px;font-size:12px;font-weight:700;letter-spacing:.6px;
  text-transform:uppercase;color:var(--muted);cursor:pointer;transition:.3s;
  font-family:"Outfit",sans-serif
}
.gf-btn:hover{border-color:var(--accent);color:var(--accent)}
.gf-btn.active{background:linear-gradient(110deg,var(--accent),var(--accent2));color:#fff;border-color:transparent;box-shadow:0 6px 18px rgba(199,92,52,.25)}
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.gitem{
  position:relative;border-radius:14px;overflow:hidden;
  aspect-ratio:1/1;cursor:pointer;
  transition:.4s;
}
.gitem img{width:100%;height:100%;object-fit:cover;transition:.5s}
.gitem:hover{box-shadow:0 20px 50px rgba(35,54,61,.2);transform:scale(1.02)}
.gitem:hover img{transform:scale(1.08)}
.gitem-label{
  position:absolute;inset:0;
  background:linear-gradient(0deg,rgba(15,10,7,.75) 0%,transparent 55%);
  display:flex;align-items:flex-end;padding:14px;
  font-size:12px;font-weight:700;color:#fff;letter-spacing:.5px;
  opacity:0;transition:.35s
}
.gitem:hover .gitem-label{opacity:1}
.gitem.hidden{display:none}

/* ─ 04. Art of Baking ─ */
.art-of-baking{padding:60px 0;background:var(--paper)}
.art-head{text-align:center;margin-bottom:70px}
.art-journey{
  display:flex;align-items:center;gap:0;
  overflow-x:auto;padding-bottom:10px;
}
.art-step{
  flex:1;min-width:160px;display:flex;flex-direction:column;gap:0;text-align:center;
}
.art-step-img{
  width:100%;height:190px;border-radius:20px;overflow:hidden;
  box-shadow:0 14px 40px rgba(35,54,61,.12);margin-bottom:20px;
}
.art-step-img img{width:100%;height:100%;object-fit:cover;transition:.5s}
.art-step:hover .art-step-img img{transform:scale(1.06)}
.art-num{
  font-family:"Cormorant Garamond",serif;font-size:13px;
  color:var(--accent);font-weight:700;letter-spacing:1px;display:block;margin-bottom:6px
}
.art-step h4{font-family:"Cormorant Garamond",serif;font-size:22px;margin-bottom:7px;color:var(--ink)}
.art-step p{font-size:12.5px;line-height:1.65;color:var(--muted);max-width:160px;margin:auto}
.art-arrow{
  flex-shrink:0;width:48px;display:flex;align-items:center;justify-content:center;
  font-size:22px;color:#d0b08c;margin-bottom:100px;
}

/* ─ 05. From Class to Creation ─ */
.class-to-creation{padding:60px 0;background:linear-gradient(135deg,#f7efe6,#fbf8f3)}
.ctc-head{text-align:center;margin-bottom:64px}
.ctc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ctc-grid .course-detail-card {
  display: flex;
  flex-direction: column;
}
.ctc-grid .course-detail-card .cdc-top {
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
}
.ctc-grid .course-detail-card .cdc-image {
  width: 100%;
  height: 200px;
}

/* ─ 06. Modern CTA ─ */
.crt-cta{position:relative;overflow:hidden;padding:70px 0}
.crt-cta-bg{
  position:absolute;inset:0;
  background:linear-gradient(130deg,#0e0906 0%,#2a1508 45%,#1a0d05 100%)
}
.crt-cta-bg:before{
  content:"";position:absolute;inset:0;
  background:url("https://images.unsplash.com/photo-1499636136210-6f4ee915583e?auto=format&fit=crop&w=1800&q=80") center/cover no-repeat;
  opacity:.14;mix-blend-mode:luminosity;
}
.crt-cta-glow{
  position:absolute;width:600px;height:600px;
  border-radius:50%;top:-200px;right:-100px;
  background:radial-gradient(circle,rgba(224,165,94,.15),transparent 70%);
  pointer-events:none;
}
.crt-cta-inner{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1fr auto;
  gap:60px;align-items:center;
}
.crt-cta-copy .eyebrow{justify-content:flex-start}
.crt-cta-copy .section-title{color:#fffdf9;margin:14px 0 18px;font-size:clamp(38px,4.5vw,62px)}
.crt-cta-copy p{color:#c8b8a6;font-size:16px;line-height:1.85;max-width:500px}
.crt-cta-actions{display:flex;flex-direction:column;gap:14px;align-items:stretch;min-width:260px}

/* Modern CTA Buttons */
.btn-cream{
  display:inline-flex;align-items:center;gap:14px;
  background:#fffdf9;color:var(--ink);
  border:none;border-radius:16px;padding:18px 26px;
  box-shadow:0 8px 30px rgba(0,0,0,.2);transition:.4s;cursor:pointer;
  font-family:"Outfit",sans-serif
}
.btn-cream:hover{background:#fff;transform:translateX(6px);box-shadow:0 14px 40px rgba(0,0,0,.3)}
.btn-cream i:first-child{font-size:22px;color:var(--accent)}
.btn-cream span{flex:1;display:flex;flex-direction:column;gap:2px;text-align:left}
.btn-cream span small{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.btn-cream span:not(small){font-size:16px;font-weight:700;color:var(--ink)}
.btn-glass-gold{
  display:inline-flex;align-items:center;gap:14px;
  background:rgba(224,165,94,.12);color:#fff;
  border:1.5px solid rgba(224,165,94,.4);border-radius:16px;padding:18px 26px;
  backdrop-filter:blur(10px);transition:.4s;cursor:pointer;
  font-family:"Outfit",sans-serif
}
.btn-glass-gold:hover{background:rgba(224,165,94,.22);border-color:rgba(224,165,94,.7);transform:translateX(6px)}
.btn-glass-gold i:first-child{font-size:22px;color:var(--accent2)}
.btn-glass-gold span{flex:1;display:flex;flex-direction:column;gap:2px;text-align:left}
.btn-glass-gold span small{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:rgba(255,255,255,.5)}
.crt-arr{font-size:16px;color:rgba(255,255,255,.4);margin-left:auto}
.btn-cream .crt-arr{color:var(--muted)}
.crt-wa-link{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  color:rgba(255,255,255,.6);font-size:13px;font-weight:600;
  letter-spacing:.5px;padding:12px;border-top:1px solid rgba(255,255,255,.1);
  transition:.3s;border-radius:0 0 14px 14px;
}
.crt-wa-link i{color:#25d366;font-size:18px}
.crt-wa-link:hover{color:#fff}

/* ─ Creations Responsive ─ */
@media(max-width:1100px){
  .crt-hero-inner{grid-template-columns:1fr;padding:110px 0 70px}
  .crt-hero-mosaic{height:360px}
  .fc-grid{height:400px}
  .art-journey{flex-wrap:wrap;gap:30px;justify-content:center}
  .art-arrow{display:none}
  .art-step{min-width:140px;flex:0 1 calc(33% - 20px)}
  .crt-cta-inner{grid-template-columns:1fr;gap:50px}
  .crt-cta-actions{flex-direction:row;flex-wrap:wrap;min-width:auto}
  .btn-cream,.btn-glass-gold{flex:1;min-width:220px}
}
@media(max-width:900px){
  .crt-hero-mosaic{display:none}
  .gallery-grid{grid-template-columns:repeat(3,1fr)}
  .ctc-grid{grid-template-columns:1fr 1fr}
  .fc-grid{grid-template-columns:1fr;height:auto}
  .fc-main{height:320px}
  .fc-side{flex-direction:row;height:200px}
  .fc-trio{grid-template-columns:1fr 1fr;height:auto}
  .fc-trio-item{height:200px}
  .crt-cta-actions{flex-direction:column}
}
@media(max-width:700px){
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .ctc-grid{grid-template-columns:1fr}
  .art-step{flex:0 1 calc(50% - 16px)}
  .fc-side{flex-direction:column;height:auto}
  .fc-small{height:180px}
  .fc-trio{grid-template-columns:1fr}
  .btn-cream,.btn-glass-gold{min-width:unset}
}
@media(max-width:480px){
  .gallery-grid{grid-template-columns:1fr 1fr}
  .crt-cta-actions{align-items:stretch}
  .gallery-filters{gap:7px}
  .gf-btn{padding:8px 14px;font-size:11px}
}

/* =============================================
   PROFESSIONAL BAKING MASTERCLASS DETAIL PAGE
   ============================================= */
.pm-page {
  background: var(--cream);
  color: var(--ink);
}

/* ─ Hero Section Custom Overrides ─ */
.crs-hero-pm {
  position: relative;
}
.pm-badge {
  background: #D55034;
  color: #fff;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.2px;
  padding: 8px 16px;
  border-radius: 6px;
  display: inline-block;
  margin-bottom: 20px;
}
.pm-title {
  font-family: 'Optima', 'Cormorant Garamond', serif;
  font-size: clamp(40px, 4.5vw, 68px);
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -1.5px;
  color: var(--ink);
  margin-bottom: 20px;
}
.text-terracotta {
  color: #D55034;
}

.pm-info-wrapper {
  position: relative;
  z-index: 10;
  margin-top: -52px;
  margin-bottom: -52px;
}
.pm-info-strip {
  width: 80% !important;
  margin: 0 auto !important;
  background: #fff;
  border: 1px solid #e9ddd0;
  border-radius: 16px;
  padding: 24px 30px !important;
  box-shadow: 0 15px 40px rgba(169, 68, 39, 0.05);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.pm-info-block {
  display: flex;
  align-items: center;
  gap: 12px;
}
.pm-info-icon {
  width: 52px;
  height: 52px;
  flex-shrink: 0;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><path fill='%23fffdf9' stroke='%23d9bea0' stroke-width='1.5' d='M50 4 C58.2 4 62.4 11.2 68.5 14.3 C74.6 17.4 82.6 14.6 85.7 20.7 C88.8 26.8 84.7 34.4 89.4 39.5 C94.1 44.6 96 46 96 50 C96 54 94.1 55.4 89.4 60.5 C84.7 65.6 88.8 73.2 85.7 79.3 C82.6 85.4 74.6 82.6 68.5 85.7 C62.4 88.8 58.2 96 50 96 C41.8 96 37.6 88.8 31.5 85.7 C25.4 82.6 17.4 85.4 14.3 79.3 C11.2 73.2 15.3 65.6 10.6 60.5 C5.9 55.4 4 54 4 50 C4 46 5.9 44.6 10.6 39.5 C15.3 34.4 11.2 26.8 14.3 20.7 C17.4 14.6 25.4 17.4 31.5 14.3 C37.6 11.2 41.8 4 50 4 Z'/></svg>") no-repeat center/contain;
  display: grid;
  place-items: center;
  font-size: 20px;
  color: #b67d42;
  transition: transform 0.4s cubic-bezier(.2,.8,.2,1);
}
.pm-info-block:hover .pm-info-icon {
  transform: rotate(10deg) scale(1.08);
}
.pm-info-label {
  display: block;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.8px;
  color: var(--muted);
  margin-bottom: 0;
}
.pm-info-val {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #D55034;
  line-height: 1.15;
}
.pm-hero-media {
  position: relative;
  display: flex;
  justify-content: center;
}
.pm-hero-img-wrap {
  position: relative;
  width: 100%;
  max-width: 440px;
  border-radius: 40px;
  overflow: hidden;
  box-shadow: 0 20px 50px rgba(0,0,0,0.06);
}
.pm-hero-main-img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.pm-price-badge {
  position: absolute;
  bottom: 24px;
  right: 24px;
  background: #D55034;
  color: #fff;
  border-radius: 50%;
  width: 110px;
  height: 110px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border: 3px dashed #E8DDBC;
  box-shadow: 0 10px 25px rgba(213,80,52,0.3);
  z-index: 5;
}
.pm-badge-label {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  opacity: 0.85;
}
.pm-badge-val {
  font-family: 'Optima', 'Cormorant Garamond', serif;
  font-size: 20px;
  font-weight: 700;
}

/* ─ Curriculum grid ─ */
.pm-curriculum {
  padding: 110px 0 80px;
  background: var(--cream);
}
.pm-section-head {
  text-align: center;
  margin-bottom: 50px;
}
.pm-section-title {
  font-family: 'Optima', 'Cormorant Garamond', serif;
  font-size: clamp(24px, 3vw, 36px);
  color: var(--ink);
  font-weight: 600;
  letter-spacing: 1.5px;
  display: inline-flex;
  align-items: center;
  gap: 20px;
}
.gold-decor-left, .gold-decor-right {
  display: inline-block;
  width: 40px;
  height: 1px;
  background: #D7A454;
  position: relative;
}
.gold-decor-left::before, .gold-decor-right::after {
  content: "♦";
  color: #D7A454;
  position: absolute;
  top: -7px;
  font-size: 10px;
}
.gold-decor-left::before { right: -6px; }
.gold-decor-right::after { left: -6px; }

.pm-curr-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 28px;
}
.pm-curr-grid-6 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 28px;
}
.pm-curr-grid-6 .pm-curr-card {
  grid-column: span 1 !important;
}

/* Curriculum bg-image cards */
.pm-curr-bg-card {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  min-height: 360px;
  display: flex;
  align-items: flex-start;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.pm-curr-bg-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  transform: scale(1.15);
  transition: transform 0.4s ease;
  z-index: 1;
}
.pm-curr-bg-card:hover::before {
  transform: scale(1.22);
}
.pm-curr-bg-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(0,0,0,0.18);
}
.pm-curr-bg-overlay {
  display: none;
}
.pm-curr-bg-content {
  position: relative;
  z-index: 2;
  padding: 24px 24px 26px;
  width: 100%;
  text-align: left;
  background: none;
}
.pm-curr-bg-content h3 {
  font-family: 'Cormorant Garamond', 'Optima', serif;
  font-size: clamp(17px, 1.6vw, 21px);
  font-weight: 700;
  color: #1a1209;
  margin: 0 0 12px;
  letter-spacing: 0.2px;
  text-shadow: 0 1px 4px rgba(255,255,255,0.6);
}
.pm-curr-bg-content ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pm-curr-bg-content ul li {
  font-family: 'Outfit', sans-serif;
  font-size: 13px;
  color: #2c1a10;
  line-height: 1.7;
  padding-left: 18px;
  position: relative;
  text-shadow: 0 1px 3px rgba(255,255,255,0.5);
}
.pm-curr-bg-content ul li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: #D55034;
  font-size: 12px;
  top: 2px;
  font-weight: 700;
}
.pm-curr-bg-learn {
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px solid rgba(80, 40, 20, 0.25);
  display: inline-block;
  width: fit-content;
  max-width: 100%;
}
.pm-curr-bg-learn .learn-tag {
  display: block;
  font-family: 'Outfit', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 1.2px;
  color: #D55034;
  margin-bottom: 6px;
}
.pm-curr-bg-learn ul li {
  font-size: 12px;
  color: #3a2010;
  text-shadow: 0 1px 3px rgba(255,255,255,0.5);
}

.pm-curr-card {
  grid-column: span 2;
  background: var(--paper);
  border: 1px solid #e7d8c9;
  border-radius: 20px;
  padding: 32px 28px;
  position: relative;
  display: flex;
  flex-direction: column;
  transition: all 0.35s ease;
}
.pm-curr-card:hover {
  transform: translateY(-5px);
  border-color: #D55034;
  box-shadow: 0 12px 30px rgba(213,80,52,0.05);
}
.pm-card-large {
  grid-column: span 3;
}
.pm-curr-num {
  position: absolute;
  top: 24px;
  left: 28px;
  background: #27353E;
  color: #fff;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 11px;
  font-weight: 700;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: grid;
  place-items: center;
}
.pm-curr-header h3 {
  font-family: 'Optima', 'Cormorant Garamond', serif;
  font-size: clamp(16px, 1.8vw, 20px);
  font-weight: 600;
  margin-left: 36px;
  margin-bottom: 24px;
  color: var(--ink);
  letter-spacing: 0.5px;
}
.pm-curr-body-split {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: flex-start;
  flex-grow: 1;
}
.pm-curr-img {
  width: 110px;
  height: 110px;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
}
.pm-curr-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pm-curr-list {
  flex: 1;
}
.pm-curr-list ul, .pm-curr-learn ul, .pm-curr-list-simple ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.pm-curr-list li, .pm-curr-list-simple li {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 13px;
  color: var(--muted);
  line-height: 1.5;
}
.pm-curr-learn {
  flex: 1;
  border-left: 1px solid var(--line);
  padding-left: 16px;
}
.learn-tag {
  display: block;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1px;
  color: #D55034;
  margin-bottom: 6px;
}
.pm-curr-learn li {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 12.5px;
  color: var(--ink);
  line-height: 1.4;
}

.pm-curr-body-simple {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.pm-curr-img-simple {
  width: 100%;
  height: 130px;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 16px;
}
.pm-curr-img-simple img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pm-curr-list-simple {
  flex-grow: 1;
}

.pm-curr-business-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 28px 20px;
  margin-top: 10px;
  flex-grow: 1;
}
.pm-biz-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 12px;
}
.pm-biz-item:hover {
  opacity: 0.8;
}
.pm-biz-item i {
  font-size: 32px;
  color: #D55034;
}
.pm-biz-item span {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 14px;
  color: var(--ink);
  line-height: 1.5;
  font-weight: 500;
}

/* ─ Details blocks section ─ */
.pm-details-block {
  background: #27353E;
  padding: 80px 0;
  color: #fffdf9;
}
.pm-details-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 40px;
}
.pm-detail-col {
  position: relative;
}
.pm-detail-title {
  font-family: 'Optima', 'Cormorant Garamond', serif;
  font-size: 18px;
  font-weight: 600;
  color: #E8DDBC;
  letter-spacing: 1px;
  margin-bottom: 24px;
  border-bottom: 1px dashed rgba(232,221,188,0.2);
  padding-bottom: 12px;
}
.pm-detail-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pm-detail-list li, .pm-detail-checklist li {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 13.5px;
  line-height: 1.5;
  color: #d8e0e2;
}
.pm-detail-checklist {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.pm-detail-checklist i {
  color: #D7A454;
  font-weight: 700;
  margin-right: 6px;
}
.list-numbered li {
  line-height: 1.6;
}
.pm-illustration-wrap {
  margin-top: 30px;
  opacity: 0.3;
  width: 60px;
}
.pm-fee-table {
  width: 100%;
  border-collapse: collapse;
}
.pm-fee-table th {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 11px;
  font-weight: 700;
  color: #bdc5c7;
  text-align: left;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.pm-fee-table td {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 13.5px;
  padding: 16px 0;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.pm-fee-table td strong {
  color: #D7A454;
  font-size: 16px;
}
.text-muted-dark {
  color: #92a0a3;
  font-size: 12.5px;
  line-height: 1.4;
  display: inline-block;
}

/* ─ Gallery phrase section ─ */
.pm-gallery-section {
  padding: 80px 0;
  background: var(--paper);
}
.pm-script-title {
  font-family: 'Italianno', cursive;
  font-size: clamp(48px, 6vw, 72px);
  color: #D55034;
  margin-bottom: 40px;
}
.pm-horizontal-gallery {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
}
.pm-gal-item {
  aspect-ratio: 1/1;
  border-radius: 20px;
  overflow: hidden;
  transition: all 0.4s ease;
}
.pm-gal-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.pm-gal-item:hover img {
  transform: scale(1.08);
}

/* ─ Footer banner section ─ */
.pm-footer-banner {
  padding: 70px 0;
}
.pm-cta-card-wrap {
  max-width: 82%;
  margin: 0 auto;
}
.pm-cta-card {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  min-height: 420px;
  display: flex;
  align-items: center;
}
.pm-cta-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, rgba(10,6,4,0.82) 0%, rgba(10,6,4,0.55) 55%, rgba(10,6,4,0.1) 100%);
  border-radius: 28px;
}
.pm-cta-card-body {
  position: relative;
  z-index: 2;
  padding: 60px 64px;
  width: 100%;
}
.pm-cta-left {
  max-width: 560px;
}
.pm-cta-eyebrow {
  display: block;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color: #e8a87c;
  margin-bottom: 16px;
}
.pm-cta-title {
  font-family: 'Cormorant Garamond', 'Optima', serif;
  font-size: clamp(32px, 4vw, 54px);
  font-weight: 700;
  line-height: 1.08;
  color: #fff;
  margin-bottom: 16px;
}
.pm-cta-title em {
  font-style: italic;
  color: #e8a87c;
}
.pm-cta-sub {
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 15px;
  color: rgba(255,255,255,0.8);
  line-height: 1.65;
  max-width: 420px;
}
.pm-cta-pill {
  margin-top: 20px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.18);
  padding: 9px 20px;
  border-radius: 30px;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 12.5px;
  color: rgba(255,255,255,0.85);
}

/* keep old pill styles for any other pages that may use it */
.pm-banner-pill {
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.2);
  padding: 10px 24px;
  border-radius: 30px;
  font-family: 'Causten', 'Outfit', sans-serif;
  font-size: 13px;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}


/* ─── PM Page RESPONSIVE ─── */
@media (max-width: 1200px) {
  .pm-curr-grid {
    gap: 20px;
  }
}
@media (max-width: 992px) {
  .pm-hero-inner {
    grid-template-columns: 1fr;
    gap: 50px;
    text-align: center;
  }
  .pm-badge {
    margin-inline: auto;
  }
  .pm-info-wrapper {
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .pm-info-strip {
    width: 100% !important;
    max-width: 600px;
    margin: 0 auto;
    grid-template-columns: repeat(2, 1fr);
  }
  .pm-hero-img-wrap {
    margin-inline: auto;
  }
  .pm-curr-grid,
  .pm-curr-grid-6 {
    grid-template-columns: 1fr;
  }
  .pm-curr-card {
    grid-column: span 1;
  }
  .pm-card-large {
    grid-column: span 4;
  }
  .pm-details-grid {
    grid-template-columns: 1fr 1fr;
    gap: 30px;
  }
  .pm-horizontal-gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
  .pm-banner-inner {
    flex-direction: column;
    text-align: center;
    gap: 30px;
  }
}
@media (max-width: 768px) {
  .pm-info-strip {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  .pm-curr-body-split {
    flex-direction: column;
    align-items: stretch;
  }
  .pm-curr-img {
    width: 100%;
    height: 180px;
  }
  .pm-curr-learn {
    border-left: none;
    border-top: 1px solid var(--line);
    padding-left: 0;
    padding-top: 16px;
  }
}
@media (max-width: 600px) {
  .pm-curr-grid {
    grid-template-columns: 1fr;
  }
  .pm-curr-card, .pm-card-large {
    grid-column: span 1;
  }
  .pm-details-grid {
    grid-template-columns: 1fr;
  }
  .pm-horizontal-gallery {
    grid-template-columns: repeat(2, 1fr);
  }
  .pm-curr-business-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
