@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--red:#c9152b;--bright:#ef233c;--deep:#650815;--cream:#fff8f3;--gold:#d5a23f;--ink:#241b1c;--muted:#75686a;--white:#fff;--line:#eaded5}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:var(--cream);line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.announcement{background:linear-gradient(90deg,var(--red),var(--bright));color:#fff;text-align:center;padding:9px 20px;font-size:11px;letter-spacing:2px;font-weight:700}.site-header{height:86px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{font-size:17px;letter-spacing:2px;font-weight:800}.brand span{color:var(--red)}nav{display:flex;gap:28px;font-size:13px;font-weight:700;letter-spacing:.5px}nav a{padding:31px 0;border-bottom:2px solid transparent}nav a:hover,nav .active{color:var(--red);border-bottom-color:var(--gold)}.menu{display:none;background:none;border:0;font-size:25px}.hero{min-height:700px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:80px 8vw;background:radial-gradient(circle at 80% 20%,#f3d8ca 0,transparent 35%),linear-gradient(120deg,#fffaf4,#f5e8df)}.eyebrow{font-size:11px;font-weight:800;letter-spacing:3px;color:var(--red);margin:0 0 14px}.hero h1,.page-hero h1,.split-hero h1,.about-hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(55px,7vw,88px);line-height:.9;margin:0 0 25px;font-weight:600}.hero h1 em,.page-hero h1 em,.split-hero h1 em,.about-hero h1 em{color:var(--red);font-style:italic}.lead{font-size:18px;max-width:650px;color:#514547}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:2px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;border:1px solid var(--red);transition:.2s}.btn.primary{background:var(--red);color:#fff}.btn.primary:hover{background:var(--deep);transform:translateY(-2px)}.btn.ghost{color:var(--red);background:transparent}.btn.light{background:#fff;color:var(--red);border-color:#fff}.btn.small{padding:10px 15px;font-size:10px}.hero-art{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center}.hero-art:before{content:'';position:absolute;width:410px;height:500px;border:1px solid var(--gold);transform:rotate(4deg)}.hero-art img{width:min(390px,78%);height:480px;object-fit:cover;object-position:center;border-radius:2px;position:relative;box-shadow:0 25px 60px #5a1b2025}.quote-card{position:absolute;bottom:22px;left:3%;background:#fff;padding:17px 22px;font-family:'Cormorant Garamond',serif;font-size:20px;max-width:280px;box-shadow:0 10px 35px #00000014}.section{padding:95px 8vw}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#fff}.intro h2,.section h2,.feature h2,.dark-section h2{font-family:'Cormorant Garamond',serif;font-size:52px;line-height:1;margin:0 0 20px}.intro>p{font-size:20px;color:var(--muted);margin:0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.text-link{color:var(--red);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:1px}.grid{display:grid;gap:25px}.three{grid-template-columns:repeat(3,1fr)}.product{background:#fff;border:1px solid var(--line);overflow:hidden}.product-img{height:390px;background:#eee1d8;display:flex;align-items:center;justify-content:center;overflow:hidden}.product-img.tall{height:500px}.product-img img{width:100%;height:100%;object-fit:cover;transition:.4s}.product:hover .product-img img{transform:scale(1.03)}.product-body{padding:25px}.product-body h3,.product-body h2{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1.05;margin:7px 0 10px}.tag{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--red)}.product-body p{color:var(--muted);font-size:14px}.muted{font-size:13px}.feature{display:grid;grid-template-columns:1fr 1fr;padding:0;background:#ead9cf}.feature-image{min-height:560px}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:90px 9vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.course-banner{background:var(--deep);color:#fff;text-align:center;padding:80px 20px}.course-banner .eyebrow{color:#e3b75f}.course-banner h2{font-family:'Cormorant Garamond',serif;font-size:70px;line-height:.9;margin:0 0 15px}.course-banner p{max-width:600px;margin:0 auto 25px;color:#eadbdd}.page-hero{padding:120px 8vw 90px;background:linear-gradient(135deg,#fffaf4,#ead9cf)}.page-hero>p:last-child{max-width:650px;font-size:19px;color:var(--muted)}.coupon{margin:0 8vw 80px;padding:18px 25px;background:#f1e1d2;border-left:4px solid var(--gold);display:flex;gap:25px;align-items:center}.coupon strong{color:var(--red);letter-spacing:2px;font-size:11px}.coupon span{font-size:13px}.split-hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px;align-items:center}.split-hero>div{padding:80px 8vw}.split-hero>img{
  width:min(560px,88%);
  height:auto;
  max-height:500px;
  object-fit:contain;
  object-position:center;
  justify-self:center;
  align-self:center;
  padding:0;
  background:transparent;
  border:0;
  border-radius:8px;
  box-shadow:0 20px 45px #4d111522;
}.centered{text-align:center}.steps{margin-top:50px}.steps>div{padding:30px;background:#fff;border:1px solid var(--line)}.steps span{color:var(--gold);font-size:13px;font-weight:800}.steps h3{font-family:'Cormorant Garamond',serif;font-size:28px;margin:10px 0}.dark-section{background:var(--deep);color:#fff;padding:90px 8vw;display:grid;grid-template-columns:1.2fr .8fr;gap:80px}.dark-section .eyebrow{color:#e3b75f}.dark-section p{color:#e8dadd}.testimonial{border-left:1px solid var(--gold);padding:30px;font-family:'Cormorant Garamond',serif;font-size:32px;display:flex;align-items:center}.faq{max-width:900px;margin:auto}.faq details{background:#fff;border-bottom:1px solid var(--line);padding:20px}.faq summary{font-weight:800;cursor:pointer}.faq details p{color:var(--muted)}.about-hero{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:90px;padding:90px 10vw;background:#fff}.portrait-wrap{background:#ead9cf;padding:20px;max-width:480px}.portrait-wrap img{width:100%;height:550px;object-fit:cover}.story{display:grid;grid-template-columns:1fr 1fr;gap:90px}.story p{font-size:18px}.values{background:#f0e2d8;padding:90px 10vw;display:grid;grid-template-columns:1fr 1fr;gap:100px}.value-list>div{padding:22px 0;border-bottom:1px solid #d5c1b5;display:flex;gap:25px}.value-list b{color:var(--red);letter-spacing:2px;font-size:11px;min-width:90px}.value-list span{color:var(--muted)}.book-story{display:grid;grid-template-columns:330px 1fr;gap:70px;align-items:center;max-width:1100px;margin:auto}.book-story img{width:100%;height:430px;object-fit:cover}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.contact-card{background:#fff;padding:40px;border:1px solid var(--line)}.contact-card .icon{font-size:28px;color:var(--gold)}.contact-card h2{font-size:34px}.contact-card p{color:var(--muted);min-height:85px}.quote-section{text-align:center;padding:100px 20px;background:#ead9cf}.quote-section p{font-family:'Cormorant Garamond',serif;font-size:50px;color:var(--red);margin:0}.quote-section span{font-size:11px;letter-spacing:2px;text-transform:uppercase}footer{background:#fff;border-top:1px solid var(--line);padding:45px 8vw;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;font-size:12px}footer strong{letter-spacing:2px}footer p{color:var(--muted)}footer a{display:block;margin:0 0 7px;color:var(--muted)}footer a:hover{color:var(--red)}
@media(max-width:800px){.site-header{height:70px;padding:0 5vw}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:10px 5vw 20px;flex-direction:column;gap:0;box-shadow:0 10px 30px #0001}nav.open{display:flex}nav a{padding:12px 0;border:0}.hero,.intro,.feature,.split-hero,.about-hero,.story,.values,.dark-section,.book-story{grid-template-columns:1fr}.hero{padding:60px 7vw}.hero-art{min-height:440px;margin-top:30px}.hero-art:before{width:290px;height:400px}.hero-art img{height:390px}.section{padding:65px 7vw}.three,.contact-grid{grid-template-columns:1fr}.product-img{height:420px}.product-img.tall{height:470px}.feature-image{min-height:400px}.feature-copy{padding:65px 7vw}.page-hero{padding:80px 7vw}.split-hero>div{padding:65px 7vw}.split-hero>img{width:min(430px,92%);height:auto;max-height:none}.dark-section{gap:30px}.about-hero{padding:65px 7vw;gap:45px}.portrait-wrap{max-width:none}.portrait-wrap img{height:480px}.values{padding:65px 7vw}.coupon{margin:0 7vw 60px;display:block}.coupon span{display:block;margin-top:7px}.course-banner h2{font-size:58px}.section h2,.intro h2,.feature h2,.dark-section h2{font-size:44px}footer{grid-template-columns:1fr;padding:35px 7vw}}

/* BRIGHTER, MORE EDITORIAL POLISH */
body{background:linear-gradient(180deg,#fffaf7 0%,#fff5ef 100%)}
.site-header{box-shadow:0 4px 24px #5c07140d}
.brand{font-size:18px}
.hero{background:radial-gradient(circle at 75% 15%,#ffc7bd 0,transparent 28%),radial-gradient(circle at 95% 75%,#f8d7bd 0,transparent 30%),linear-gradient(135deg,#fffdf9,#ffe9e1)}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:5px;background:linear-gradient(90deg,var(--red),var(--gold),var(--bright))}
.hero{position:relative}
.eyebrow{color:var(--red)}
.hero h1 em,.page-hero h1 em,.split-hero h1 em,.about-hero h1 em{color:var(--bright)}
.btn.primary{background:linear-gradient(135deg,var(--red),var(--bright));box-shadow:0 8px 22px #c9152b2b}
.btn.primary:hover{background:var(--deep)}
.product{border-radius:8px;box-shadow:0 12px 35px #5c071414;transition:transform .25s,box-shadow .25s}
.product:hover{transform:translateY(-7px);box-shadow:0 22px 50px #5c071422}
.product-img{background:linear-gradient(135deg,#f7ddd3,#f0c9c1);padding:16px}
.product-img img{border-radius:5px;object-fit:contain;background:#fff;box-shadow:0 8px 25px #4d11151a}
.product-img.tall{padding:22px}
.product-body h3,.product-body h2{color:#35171b}
.tag{color:var(--red)}
.feature{position:relative;overflow:hidden}
.feature:after{content:"";position:absolute;width:230px;height:230px;border:35px solid #ef233c18;border-radius:50%;right:-80px;top:-80px}
.feature-image{padding:28px}
.feature-image img{border-radius:8px;box-shadow:0 20px 50px #4d111522;object-fit:contain;background:#fff}
.feature-copy{position:relative;z-index:1}
.course-banner{background:radial-gradient(circle at 50% -20%,#c9152b 0,#650815 48%,#35050a 100%)}
.course-banner .btn.light{box-shadow:0 8px 25px #0004}
.page-hero{background:radial-gradient(circle at 80% 10%,#ffc9bf 0,transparent 30%),linear-gradient(135deg,#fffaf6,#ffe5dc)}
.page-hero:after{content:"";display:block;width:90px;height:4px;background:var(--bright);margin-top:45px}
.about-hero{background:linear-gradient(135deg,#fff,#fff0e9)}
.portrait-wrap{background:linear-gradient(145deg,#c9152b,#ef233c);padding:16px;border-radius:10px;box-shadow:0 22px 55px #6b101c25}
.portrait-wrap img{border-radius:5px;object-fit:cover}
.values{background:linear-gradient(135deg,#ffe7df,#fff5ef)}
.value-list b{color:var(--bright)}
.book-story img{object-fit:contain;background:#fff;padding:18px;box-shadow:0 15px 40px #4d11151c;border-radius:8px}
.contact-card{border-radius:8px;box-shadow:0 12px 35px #5c071414;transition:transform .2s}
.contact-card:hover{transform:translateY(-5px)}
.quote-section{background:linear-gradient(135deg,#ffe1d8,#fff3ed)}
.quote-section p{color:var(--red)}
.coupon{background:linear-gradient(90deg,#ffe0d7,#fff2ea);border-left-color:var(--bright);border-radius:4px}

.visual-strip{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;padding:0 8vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.visual-strip div{padding:30px 25px;text-align:center;border-right:1px solid var(--line)}
.visual-strip div:last-child{border-right:0}
.visual-strip span{display:block;color:var(--bright);font-size:10px;font-weight:800;letter-spacing:3px}
.visual-strip strong{font-family:'Cormorant Garamond',serif;font-size:27px;font-weight:600}
@media(max-width:800px){.visual-strip{grid-template-columns:1fr}.visual-strip div{border-right:0;border-bottom:1px solid var(--line)}.visual-strip div:last-child{border-bottom:0}}

/* BRAND + AUDIENCE-GRABBING VISUAL UPGRADE */
.site-header{height:96px;padding:0 6vw}
.brand{display:flex;align-items:center;gap:12px;letter-spacing:0}
.brand-mark{position:relative;width:49px;height:49px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--bright),var(--red));color:#fff;box-shadow:0 8px 20px #c9152b30;border:3px solid #fff;outline:1px solid var(--gold)}
.brand-mark b{font-family:'Cormorant Garamond',serif;font-size:29px;line-height:1}
.brand-mark i{position:absolute;right:-6px;bottom:-4px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--red);font-size:9px;font-style:normal;box-shadow:0 3px 10px #0002}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{font-size:18px;letter-spacing:2.5px;color:var(--red)}
.brand-copy small{margin-top:6px;font-size:9px;letter-spacing:3.2px;font-weight:800;color:#3b2527}
nav{gap:30px}
nav a{padding:35px 0}

.product-img{height:450px!important;min-height:450px;padding:14px!important;background:linear-gradient(135deg,#fff,#f7ddd5)!important}
.product-img.tall{height:500px!important}
.product-img img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#fff;border-radius:4px;box-shadow:0 10px 25px #4d11151a}
.product-body{padding:28px}
.product-body .btn{margin-top:8px}

.collection-intro{display:grid;grid-template-columns:90px 1fr 280px;gap:35px;align-items:center;padding:55px 8vw;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.collection-badge{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--bright);color:#fff;font-size:25px;box-shadow:0 10px 30px #c9152b35}
.collection-intro h2{font-family:'Cormorant Garamond',serif;font-size:46px;line-height:1;margin:0 0 10px}
.collection-intro h2 em{color:var(--bright);font-style:italic}
.collection-intro p:last-child{max-width:680px;color:var(--muted);margin:0}
.collection-links{border-left:1px solid var(--line);padding-left:30px}
.collection-links a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px}
.collection-links a span{color:var(--bright);font-size:18px}

.story-banner{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#650815;color:#fff;overflow:hidden}
.story-copy{padding:90px 10vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative}
.story-copy .eyebrow{color:#ffcf62}
.story-copy h2{font-family:'Cormorant Garamond',serif;font-size:58px;line-height:.98;max-width:650px;margin:0 0 25px}
.story-copy p:not(.eyebrow){color:#f4dfe0;max-width:570px;font-size:17px}
.story-number{position:absolute;top:28px;left:10vw;color:#ef233c;font-family:'Cormorant Garamond',serif;font-size:80px;font-weight:700;opacity:.35}
.story-visual{position:relative;min-height:650px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,#ef233c 0,#8e1625 45%,#35050a 100%)}
.story-visual img{width:min(390px,65%);height:520px;object-fit:cover;border:12px solid #fff;box-shadow:0 30px 70px #18030680;position:relative;z-index:2}
.story-frame{position:absolute;width:430px;height:560px;border:1px solid #e4b95b;transform:rotate(-5deg)}
.story-caption{position:absolute;bottom:45px;right:8%;background:#fff;color:var(--red);padding:10px 17px;font-size:10px;font-weight:800;letter-spacing:2px;z-index:3;box-shadow:0 10px 30px #0003}

.feature-image{display:flex;align-items:center;justify-content:center;padding:35px!important;background:linear-gradient(135deg,#f6ddd4,#fff3ed)}
.feature-image img{max-height:490px;width:100%;object-fit:contain!important}

@media(max-width:800px){
 .site-header{height:78px}.brand-mark{width:43px;height:43px}.brand-copy strong{font-size:16px}.brand-copy small{font-size:7px;letter-spacing:2.4px}
 nav a{padding:12px 0}
 .collection-intro{grid-template-columns:1fr;gap:18px;padding:45px 7vw}.collection-links{border-left:0;padding-left:0;margin-top:8px}
 .story-banner{grid-template-columns:1fr}.story-copy{padding:75px 7vw}.story-number{left:7vw}.story-copy h2{font-size:45px}.story-visual{min-height:520px}.story-visual img{height:430px;width:75%}.story-frame{width:78%;height:460px}
 .product-img,.product-img.tall{height:430px!important;min-height:430px!important}
}

/* CONTACT PAGE — SIMPLE, WARM, DIRECT */
.contact-hero-simple{
  min-height:650px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  padding:80px 8vw;
  background:radial-gradient(circle at 85% 25%,#ffc5bb 0,transparent 32%),linear-gradient(135deg,#fffaf6,#ffe7df);
}
.contact-hero-copy{padding-right:60px}
.contact-hero-copy h1{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(58px,7vw,88px);
  line-height:.9;
  margin:0 0 25px;
}
.contact-hero-copy h1 em{color:var(--bright);font-style:italic}
.contact-big{
  margin-top:20px;
  padding:18px 34px;
  font-size:13px;
  min-width:205px;
  background:linear-gradient(135deg,var(--red),var(--bright));
  box-shadow:0 14px 35px #c9152b38;
}
.contact-hero-art{
  min-height:480px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
.contact-hero-art:before{
  content:'';
  position:absolute;
  width:390px;height:390px;
  border-radius:50%;
  background:linear-gradient(145deg,var(--red),var(--deep));
  box-shadow:0 30px 70px #65081530;
}
.contact-circle{
  position:absolute;
  width:300px;height:300px;
  border:1px solid #e6b85a;
  border-radius:50%;
  display:grid;place-items:center;
  color:#fff;font-size:50px;z-index:2;
}
.contact-word{
  position:relative;z-index:3;
  color:#fff;text-align:center;
  font-family:'Cormorant Garamond',serif;
  font-size:55px;line-height:.85;font-weight:600;
}
.contact-word em{color:#ffd267;font-style:italic}
.contact-options{background:#fff}
.contact-simple-card{
  background:#fffaf7;
  border:1px solid var(--line);
  padding:32px;
  min-height:220px;
  box-shadow:0 10px 28px #5c071410;
}
.contact-simple-card span{color:var(--bright);font-size:11px;font-weight:800;letter-spacing:2px}
.contact-simple-card h3{font-family:'Cormorant Garamond',serif;font-size:31px;margin:12px 0 8px}
.contact-simple-card p{color:var(--muted);font-size:14px}
@media(max-width:800px){
 .contact-hero-simple{grid-template-columns:1fr;padding:65px 7vw}
 .contact-hero-copy{padding-right:0}
 .contact-hero-art{min-height:390px;margin-top:30px}
 .contact-hero-art:before{width:300px;height:300px}
 .contact-circle{width:235px;height:235px}
 .contact-word{font-size:43px}
}

/* FINAL CONTACT PAGE */
.contact-hero-final{
  min-height:620px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
  padding:72px 8vw;
  background:radial-gradient(circle at 86% 18%,#ffc0b5 0,transparent 30%),linear-gradient(135deg,#fffaf6,#ffe6de);
}
.contact-final-copy{max-width:690px}
.contact-final-copy h1{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(58px,7vw,90px);
  line-height:.88;
  margin:0 0 24px;
}
.contact-final-copy h1 em{color:var(--bright);font-style:italic}
.contact-big-final{
  margin-top:18px;
  padding:19px 30px;
  min-width:270px;
  text-align:center;
  background:linear-gradient(135deg,var(--red),var(--bright));
  box-shadow:0 14px 36px #c9152b38;
}
.contact-note{font-size:12px!important;color:#7c6667!important;margin-top:13px!important}
.contact-final-art{min-height:480px;position:relative;display:grid;place-items:center}
.contact-final-art:before{
  content:"";position:absolute;width:380px;height:380px;border-radius:50%;
  background:linear-gradient(145deg,#c9152b,#650815);
  box-shadow:0 30px 70px #65081535;
}
.contact-final-circle{
  position:relative;z-index:2;width:275px;height:275px;border-radius:50%;
  border:1px solid #f0c45d;display:grid;place-items:center;color:#fff;
  font-family:'Cormorant Garamond',serif;font-size:130px;
}
.contact-final-spark{position:absolute;z-index:3;top:88px;right:21%;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--red);display:grid;place-items:center;box-shadow:0 7px 20px #0003}
.contact-final-text{position:absolute;z-index:4;color:#fff;text-align:center;font-size:10px;line-height:1.65;letter-spacing:4px;font-weight:800;bottom:75px}
.contact-final-text em{color:#ffd267;font-style:normal}
@media(max-width:800px){
 .contact-hero-final{grid-template-columns:1fr;padding:60px 7vw}
 .contact-final-art{min-height:390px;margin-top:25px}
 .contact-final-art:before{width:300px;height:300px}
 .contact-final-circle{width:220px;height:220px;font-size:100px}
 .contact-final-spark{top:55px;right:17%}
}

/* SPEAKING & EVENTS — FAITH + MODERN TECHNOLOGY */
.events-hero{
  min-height:650px;display:grid;grid-template-columns:1fr 1fr;align-items:center;
  padding:75px 8vw;background:radial-gradient(circle at 82% 18%,#ffc6bb 0,transparent 30%),linear-gradient(135deg,#fffaf6,#ffe7df);
  overflow:hidden;position:relative
}
.events-hero-copy{position:relative;z-index:2;max-width:700px}
.events-hero-copy h1{font-family:'Cormorant Garamond',serif;font-size:clamp(58px,7vw,90px);line-height:.88;margin:0 0 25px}
.events-hero-copy h1 em{color:var(--bright);font-style:italic}
.events-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:25px}
.events-hero-visual{height:560px;position:relative;display:grid;place-items:center}
.event-photo-frame{width:370px;height:470px;position:relative;z-index:3;border:10px solid #fff;box-shadow:0 30px 65px #4d111530;transform:rotate(2deg);overflow:hidden}
.event-photo-frame img{width:100%;height:100%;object-fit:cover}
.tech-ring{position:absolute;border:1px solid #d5a23f66;border-radius:50%}
.ring-one{width:500px;height:500px}.ring-two{width:410px;height:410px;border-style:dashed}
.event-stamp{position:absolute;z-index:5;right:3%;bottom:35px;background:var(--bright);color:#fff;padding:17px 20px;text-align:center;font-size:11px;font-weight:800;letter-spacing:3px;box-shadow:0 12px 30px #c9152b35}
.event-stamp span{color:#ffd267}
.faith-tech-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#650815;color:#fff}
.faith-tech-strip>div{padding:35px 30px;border-right:1px solid #ffffff1a;position:relative}
.faith-tech-strip>div:last-child{border-right:0}
.faith-tech-strip span{color:#ef233c;font-size:10px;font-weight:800;letter-spacing:2px}
.faith-tech-strip strong{display:block;font-family:'Cormorant Garamond',serif;font-size:31px;margin:7px 0}
.faith-tech-strip p{color:#ead7d8;font-size:13px;margin:0}
.calendar-section{background:#fff}
.events-heading{align-items:end}
.calendar-legend{font-size:11px;text-transform:uppercase;letter-spacing:1px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.dot.upcoming{background:var(--bright)}.dot.soon{background:var(--gold);margin-left:12px}
.calendar-shell{background:#fffaf7;border:1px solid var(--line);box-shadow:0 20px 55px #5c071414}
.calendar-top{display:flex;justify-content:space-between;align-items:center;padding:30px 35px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#fff,#fff1eb)}
.calendar-kicker{color:var(--bright);font-size:9px;font-weight:800;letter-spacing:3px}
.calendar-top h3{font-family:'Cormorant Garamond',serif;font-size:35px;margin:5px 0 0}
.calendar-year{font-family:'Cormorant Garamond',serif;font-size:70px;color:#c9152b20;font-weight:700}
.month-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.month-card{min-height:180px;background:#fff;padding:18px;position:relative;overflow:hidden}
.month-card:after{content:"";position:absolute;width:80px;height:80px;border:1px solid #ef233c1c;border-radius:50%;right:-25px;bottom:-25px}
.month-head{display:flex;justify-content:space-between;color:#3b2527;border-bottom:1px solid var(--line);padding-bottom:10px}
.month-head b{letter-spacing:2px;font-size:11px}.month-head span{color:var(--bright);font-size:10px}
.date-placeholder{height:120px;display:flex;flex-direction:column;justify-content:center}
.date-placeholder strong{font-family:'Cormorant Garamond',serif;font-size:25px;color:#5a3337}
.date-placeholder small{color:#8b7070;margin-top:5px}
.calendar-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 35px;border-top:1px solid var(--line)}
.calendar-footer>div{display:flex;align-items:center;gap:15px}.calendar-footer p{margin:4px 0 0;color:var(--muted);font-size:12px}.calendar-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--bright);color:#fff}
.event-gallery{background:#fff5ef}
.event-gallery-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:20px}
.event-gallery figure{margin:0;position:relative;height:360px;overflow:hidden;background:#eee;box-shadow:0 14px 35px #5c071414}
.event-gallery figure:first-child{height:430px}
.event-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.event-gallery figure:hover img{transform:scale(1.05)}
.event-gallery figcaption{position:absolute;left:18px;bottom:18px;background:#fff;color:var(--red);padding:8px 12px;font-size:9px;font-weight:800;letter-spacing:2px}
.engagement-cta{padding:100px 8vw;text-align:center;background:radial-gradient(circle at 50% 0,#ef233c 0,#8e1625 45%,#35050a 100%);color:#fff;position:relative;overflow:hidden}
.engagement-cta h2{font-family:'Cormorant Garamond',serif;font-size:58px;line-height:.95;margin:10px 0 20px}
.engagement-cta h2 em{color:#ffd267}.engagement-cta p:not(.eyebrow){max-width:650px;margin:0 auto 28px;color:#f2dddd}
.cta-cross{position:absolute;right:10%;top:40px;font-size:90px;color:#ffffff10}
@media(max-width:900px){
 .events-hero{grid-template-columns:1fr}.events-hero-visual{min-height:500px;margin-top:20px}.faith-tech-strip{grid-template-columns:repeat(2,1fr)}
 .month-grid{grid-template-columns:repeat(3,1fr)}.event-gallery-grid{grid-template-columns:1fr 1fr}.event-gallery figure:first-child{height:360px}
}
@media(max-width:600px){
 .events-hero{padding:60px 7vw}.events-hero-visual{height:430px}.event-photo-frame{width:290px;height:370px}.ring-one{width:370px;height:370px}.ring-two{width:310px;height:310px}
 .faith-tech-strip{grid-template-columns:1fr}.faith-tech-strip>div{border-right:0;border-bottom:1px solid #ffffff1a}
 .calendar-top{padding:25px;}.calendar-year{font-size:48px}.month-grid{grid-template-columns:repeat(2,1fr)}.calendar-footer{padding:25px;align-items:flex-start;flex-direction:column}
 .event-gallery-grid{grid-template-columns:1fr}.event-gallery figure,.event-gallery figure:first-child{height:340px}.engagement-cta h2{font-size:45px}
}


/* PREMIUM SITE-WIDE ANNOUNCEMENT BANNER */
.announcement{
  position:relative;
  z-index:30;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  padding:8px 28px;
  overflow:hidden;
  color:#fff;
  text-decoration:none;
  text-align:center;
  background:
    radial-gradient(circle at 12% 50%,#ff5a68 0,transparent 20%),
    radial-gradient(circle at 88% 50%,#ff4356 0,transparent 20%),
    linear-gradient(90deg,#a7081e 0%,#d91430 42%,#ef233c 72%,#b30920 100%);
  box-shadow:0 5px 22px #7e071c2b;
}
.announcement:before{
  content:"";
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(115deg,transparent 0 42px,#ffffff09 43px 44px);
  pointer-events:none;
}
.announcement:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,#ffd267,#fff,#ffd267,transparent);
  opacity:.9;
}
.announcement-main,.announcement-cta,.announcement-star{position:relative;z-index:1}
.announcement-main{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}
.announcement-main b{font-size:11px;letter-spacing:2px;white-space:nowrap}
.announcement-main span{font-size:11px;letter-spacing:.6px;color:#ffe8e9}
.announcement-cta{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 13px;
  border:1px solid #ffd267;
  color:#fff;
  background:#8e071a55;
  border-radius:999px;
  font-size:9px;font-weight:800;letter-spacing:1.5px;
  transition:.2s;
}
.announcement:hover .announcement-cta{background:#fff;color:var(--red);transform:translateY(-1px)}
.announcement-cta strong{font-size:15px;line-height:0;color:#ffd267}.announcement:hover .announcement-cta strong{color:var(--red)}
.announcement-star{color:#ffd267;font-size:12px}
@media(max-width:700px){
 .announcement{min-height:48px;padding:7px 12px;gap:8px}
 .announcement-star{display:none}
 .announcement-main{gap:3px;flex-direction:column}
 .announcement-main b{font-size:9px;letter-spacing:1.5px}
 .announcement-main span{font-size:9px}
 .announcement-cta{padding:6px 9px;font-size:8px}
}

/* CLEAN, FULL-BLEED SPEAKING GALLERY — evenly aligned with no large gaps */
.event-gallery-expanded{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,300px);grid-auto-rows:300px;gap:18px}
.event-gallery-expanded figure,.event-gallery-expanded figure:first-child,.event-gallery-expanded .gallery-main{height:300px;grid-column:auto;grid-row:auto}
.event-gallery-expanded img{display:block;width:100%;height:100%;object-fit:cover}
.gallery-note{margin:22px 0 0;color:var(--muted);font-size:11px;line-height:1.6;text-align:center}
@media(max-width:1100px){.event-gallery-expanded{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,300px)}}
@media(max-width:600px){.event-gallery-expanded{grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:340px}.event-gallery-expanded figure,.event-gallery-expanded figure:first-child,.event-gallery-expanded .gallery-main{height:340px}}


/* FINAL BRAND + HOMEPAGE POLISH */
.brand-logo{display:block;width:190px;height:auto;max-height:64px;object-fit:contain}
.welcome-support{display:inline-block;margin-top:12px}
.hero-art:before{width:390px;height:480px;transform:none;border:1px solid var(--gold);border-radius:2px}
.hero-art img{object-fit:contain;object-position:center;background:transparent}
.announcement-main{max-width:760px}
@media(max-width:800px){.brand-logo{width:170px;max-height:58px}.hero-art:before{width:290px;height:390px}.hero-art img{height:390px}}


/* Personal speaking-engagement photos supplied by Dee */
.speaking-booking{background:#fffaf6}
.booking-photo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.88fr) minmax(0,1fr);align-items:center;gap:26px;max-width:1260px;margin:0 auto}
.booking-photo-grid figure{position:relative;margin:0;height:clamp(360px,42vw,560px);min-width:0;overflow:hidden;border-radius:4px;background:#eee;box-shadow:0 16px 40px #5c071414}
.booking-photo-grid img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%}
.booking-photo-grid figcaption{position:absolute;left:12px;right:12px;bottom:14px;width:max-content;max-width:calc(100% - 24px);background:#fff;color:var(--red);padding:10px 12px;font-size:9px;font-weight:800;letter-spacing:1.2px}
.booking-middle{text-align:center;padding:24px 4px}
.booking-middle h2{font-family:'Cormorant Garamond',serif;font-size:clamp(34px,3.5vw,48px);line-height:1.02;margin:0 0 18px}
.booking-middle>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.75;margin:0 0 20px}
.booking-middle .eyebrow{font-size:10px}
@media(max-width:900px){.booking-photo-grid{grid-template-columns:1fr 1fr;gap:18px}.booking-middle{grid-column:1/-1;grid-row:1;padding:0 8px 18px}.booking-photo-grid figure{height:440px}}
@media(max-width:600px){.booking-photo-grid{grid-template-columns:1fr}.booking-middle{grid-column:auto;grid-row:auto;padding:0 0 12px}.booking-photo-grid figure{height:460px}}


/* Speaking booking invitation sits above the two photos and before the experience gallery. */
.speaking-booking{background:#fffaf6;padding-top:54px;padding-bottom:54px}
.booking-invite{max-width:780px;margin:0 auto 30px;text-align:center}
.booking-invite h2{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,4vw,52px);line-height:1.04;margin:0 0 14px}
.booking-invite>p:not(.eyebrow){font-size:15px;color:var(--muted);line-height:1.75;margin:0 auto 18px;max-width:680px}
.booking-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1050px;margin:0 auto}
.booking-photo-grid figure{height:clamp(360px,43vw,540px)}
@media(max-width:600px){.booking-photo-grid{grid-template-columns:1fr}.booking-photo-grid figure{height:440px}.booking-invite{margin-bottom:24px}}

/* Booking invitation now leads the Speaking & Events page. */
.speaking-booking{background:#fffaf6;padding-top:58px;padding-bottom:58px}
.booking-invite h2{color:#171313}
.booking-invite h2 span{color:var(--red);font-style:italic}
.booking-invite .eyebrow{color:var(--red)}


/* Shop page refinements: a full-width, balanced headline and larger product display */
.shop-page .page-hero{padding:72px 4vw 48px;text-align:center;}
.shop-page .page-hero .eyebrow{margin-bottom:10px;}
.shop-page .page-hero h1{font-size:clamp(38px,4.5vw,62px);line-height:1.05;max-width:100%;margin:0 auto 18px;white-space:normal;}
.shop-page .page-hero>p:last-child{max-width:900px;margin:0 auto;font-size:17px;}
.shop-page .page-hero:after{margin:26px auto 0;width:110px;}
.shop-page .shop-products{padding:55px 4vw 75px;}
.shop-page .shop-products .grid.three{gap:28px;align-items:stretch;}
.shop-page .shop-products .product{display:flex;flex-direction:column;min-width:0;}
.shop-page .shop-products .product-img,.shop-page .shop-products .product-img.tall{height:540px!important;min-height:540px!important;padding:18px!important;}
.shop-page .shop-products .product-body{padding:30px 28px 34px;display:flex;flex:1;flex-direction:column;align-items:flex-start;}
.shop-page .shop-products .product-body .btn{margin-top:auto;margin-top:18px;}
@media(max-width:1000px){.shop-page .shop-products .grid.three{gap:18px}.shop-page .shop-products .product-img,.shop-page .shop-products .product-img.tall{height:450px!important;min-height:450px!important}.shop-page .shop-products .product-body{padding:23px 20px 28px}}
@media(max-width:800px){.shop-page .page-hero{padding:65px 7vw 42px}.shop-page .page-hero h1{font-size:clamp(38px,8vw,54px);line-height:1.02}.shop-page .shop-products{padding:42px 7vw 60px}.shop-page .shop-products .grid.three{gap:28px}.shop-page .shop-products .product-img,.shop-page .shop-products .product-img.tall{height:500px!important;min-height:500px!important}}
@media(max-width:480px){.shop-page .page-hero h1{font-size:39px}.shop-page .shop-products .product-img,.shop-page .shop-products .product-img.tall{height:420px!important;min-height:420px!important}}
