:root{--paper:#EFEBE4;--cream:#F5EDC9;--olive:#737038;--red:#BB0C0F;--ink:#2D1E18}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit}button,input{font:inherit}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #2d1e1830;background:var(--paper);position:sticky;top:0;z-index:5}.brand{font-family:Georgia,serif;font-size:35px;letter-spacing:-3px;text-decoration:none;line-height:1}.brand small{display:block;font:8px Arial;letter-spacing:5px;text-align:center;margin-top:7px}.navcta,.eyebrow,.meta,.btn,.caption{font-size:11px;letter-spacing:1.7px;font-weight:600}.navcta{text-underline-offset:7px}.hero{padding:45px 5% 0;position:relative}.eyebrow{color:var(--red);margin-bottom:25px}.hero-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:6%;align-items:center}.hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(55px,6.7vw,104px);letter-spacing:-5px;line-height:.95;margin:0;position:relative;z-index:1}.script{font:italic clamp(30px,3.8vw,60px) Georgia,serif;color:var(--red);margin:14px 0 22px}.intro{font-size:15px;line-height:1.8;max-width:510px}.meta{line-height:1.9;margin:23px 0}.meta span{font-size:10px;font-weight:400}.photo{position:relative;margin:0;background:var(--ink)}.photo img{display:block;width:100%;height:610px;object-fit:cover;object-position:50% 35%}.photo figcaption{position:absolute;bottom:20px;left:25px;color:var(--cream);font-size:10px;letter-spacing:2px}.photo .stamp{position:absolute;right:-17px;top:30px;background:var(--red);color:var(--cream);width:102px;height:102px;border-radius:50%;display:grid;place-content:center;text-align:center;font:italic 24px Georgia;transform:rotate(10deg)}.formbox{margin-top:25px;padding:22px 0 28px;border-top:1px solid #2d1e1840;scroll-margin-top:110px}.formtitle{font:italic 22px Georgia;margin:0 0 17px}form{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{font-size:11px;display:block;letter-spacing:.3px}input{width:100%;background:transparent;color:var(--ink);border:1px solid #73703880;border-radius:0;padding:13px 11px;margin-top:7px;min-width:0;font-size:14px}label.full,.btn.full{grid-column:1/-1}.btn{display:inline-flex;justify-content:center;align-items:center;gap:30px;background:var(--olive);color:var(--cream);border:0;padding:19px 22px;min-height:54px;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}.btn:hover{background:var(--ink);transform:translateY(-2px)}:focus-visible{outline:3px solid var(--red);outline-offset:4px}.notice{font-size:11px;line-height:1.5;margin:12px 0 0;color:#5b493d}.error{font-size:13px;color:var(--red);line-height:1.6}.band{margin-top:32px;background:var(--olive);color:var(--cream);padding:22px;text-align:center;letter-spacing:4px;font-size:11px}.learning{padding:85px 5% 95px}.sectionline{display:flex;justify-content:space-between;border-bottom:1px solid #2d1e1840;padding-bottom:16px;font-size:10px;letter-spacing:2px}.learning h2{font:400 clamp(36px,4.2vw,64px)/1.1 Georgia;max-width:820px;letter-spacing:-2px;margin:35px 0 48px}.learning h2 em{color:var(--red)}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.pillar{border-top:1px solid var(--olive);padding-top:22px}.number{font:italic 30px Georgia;color:var(--red)}.pillar h3{font:26px Georgia;font-weight:400}.pillar p{font-size:14px;line-height:1.8}.about{background:var(--olive);color:var(--cream);padding:70px 8%;display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:center}.about img{width:100%;height:540px;object-fit:cover;object-position:center 30%}.about h2{font:400 clamp(35px,3.8vw,57px)/1.08 Georgia;letter-spacing:-1.5px}.about p{font-size:14px;line-height:1.8}.about .eyebrow{color:var(--cream)}.about a{text-underline-offset:6px}.closing{padding:90px 8%;background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1.5fr .7fr;gap:12%;align-items:center}.closing h2{font:400 clamp(44px,5vw,74px)/1.05 Georgia;margin:0 0 25px}.closing h2 em{color:#B7B159}.closing p{max-width:530px;font-size:14px;line-height:1.8}.closing .btn{margin-top:14px}.martini{width:100%;max-width:240px;transform:rotate(-9deg)}.leopard{height:15px;background-color:var(--olive);background-image:radial-gradient(ellipse at 20% 30%,var(--cream) 0 12%,var(--ink) 13% 25%,transparent 26%),radial-gradient(ellipse at 80% 80%,var(--ink) 0 20%,transparent 21%);background-size:40px 25px}footer{padding:32px 5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px}.confirmation{max-width:850px;margin:auto;padding:70px 25px;text-align:center}.confirmation h1{font:400 clamp(45px,6vw,78px)/1.05 Georgia;letter-spacing:-3px;margin:30px 0 15px}.confirmation h2{font:italic 30px Georgia;color:var(--red);font-weight:400}.confirmation p{max-width:540px;margin:20px auto;font-size:15px;line-height:1.8}.confirmation .martini{height:130px;width:160px;margin-top:28px}.confirmation .btn{margin:10px 0}.preview-note{background:#73703815;border:1px solid #73703850;padding:12px;font-size:12px!important}.hidden{display:none!important}@media(min-width:1500px){main{max-width:1600px;margin:auto}}@media(max-width:900px){.hero h1{font-size:65px}.hero-grid{gap:4%}.photo img{height:650px}.pillars{grid-template-columns:1fr 1fr}.about{padding:60px 5%;gap:5%}.closing{gap:5%}}@media(max-width:600px){header{height:72px}.brand{font-size:29px}.navcta{font-size:9px}.hero{padding-top:29px}.eyebrow{font-size:9px;letter-spacing:1.2px}.hero-grid{display:flex;flex-direction:column;gap:25px}.hero h1{font-size:61px;letter-spacing:-3px}.script{font-size:34px}.intro{font-size:14px;line-height:1.7}.meta{font-size:10px}.hero-copy{width:100%}.formbox{margin-top:18px}form{grid-template-columns:1fr}label{grid-column:1}.photo{width:100%}.photo img{height:470px}.photo .stamp{right:13px;top:20px;width:85px;height:85px;font-size:21px}.band{letter-spacing:2px;font-size:9px;line-height:2;padding:16px}.learning{padding:52px 6%}.learning h2{font-size:39px;margin:26px 0 32px}.pillars{grid-template-columns:1fr;gap:22px}.pillar{display:grid;grid-template-columns:45px 1fr;gap:0 14px;padding-top:18px}.pillar h3{margin:2px 0 10px;font-size:26px}.pillar p{grid-column:2;margin:0}.about{grid-template-columns:1fr;padding:40px 6%;gap:35px}.about img{height:440px}.about h2{font-size:40px}.closing{display:block;padding:60px 6%}.closing h2{font-size:48px}.closing .martini{display:block;width:130px;margin:40px auto 0}footer{gap:25px;flex-wrap:wrap}.confirmation{padding-top:45px}.confirmation h1{letter-spacing:-2px}.confirmation .btn{font-size:10px;gap:15px}.sectionline{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.logo{display:block;width:70px;height:70px;object-fit:contain;border-radius:50%}footer .logo{width:64px;height:64px}@media(max-width:600px){header .logo{width:58px;height:58px}.confirmation header .caption{font-size:8px}}

/* Portrait shares the hero canvas; soft masks replace the rectangular frame. */
.hero{isolation:isolate;overflow:hidden;padding-top:40px;padding-bottom:22px;background:var(--paper)}
.hero-grid{display:block;position:relative}
.hero-copy{position:relative;z-index:2;width:53%;max-width:700px}
.hero>.eyebrow{position:relative;z-index:2}
.hero .photo{position:absolute;z-index:0;right:-9%;top:-85px;bottom:-45px;width:65%;margin:0;background:transparent;pointer-events:none}
.hero .photo img{height:100%;width:100%;object-fit:cover;object-position:50% 30%;mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 77%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 18%,#000 65%,transparent 97%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 77%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 18%,#000 65%,transparent 97%);-webkit-mask-composite:source-in}
.hero .photo figcaption{bottom:70px;left:43%;color:var(--ink);font-size:9px;letter-spacing:2px}
.hero .intro{max-width:480px}
.hero h1{font-size:clamp(55px,6.1vw,94px)}
.band{margin-top:0}
@media(max-width:900px) and (min-width:601px){.hero-copy{width:57%}.hero .photo{right:-14%;width:70%}.hero h1{font-size:58px}.hero .intro{font-size:14px}}
@media(max-width:600px){.hero{padding-top:25px;padding-bottom:0}.hero-grid{display:flex;flex-direction:column;gap:0}.hero-copy{width:100%;max-width:none}.hero h1{font-size:56px;letter-spacing:-3px}.hero .photo{position:relative;top:auto;bottom:auto;right:auto;width:125%;height:450px;margin:-10px -12.5% -20px;align-self:center}.hero .photo img{object-position:50% 32%;mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent),linear-gradient(to bottom,transparent,#000 22%,#000 68%,transparent 98%);-webkit-mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent),linear-gradient(to bottom,transparent,#000 22%,#000 68%,transparent 98%)}.hero .photo figcaption{left:0;right:0;text-align:center;bottom:24px}.hero .formbox{padding-bottom:10px}}

/* Event details are a prominent conversion cue on both pages. */
.meta{font-size:clamp(20px,1.9vw,28px);font-weight:800;letter-spacing:.6px;line-height:1.45;color:var(--red);margin:26px 0;padding:17px 0;border-top:2px solid currentColor;border-bottom:2px solid currentColor}.meta span{display:inline-block;font-size:16px;font-weight:700;letter-spacing:2px;margin-top:8px}.closing .meta{background:var(--paper);color:var(--red);padding:20px 24px;border:0;max-width:540px}.confirmation .meta{max-width:560px;margin:28px auto}@media(max-width:600px){.meta{font-size:22px;line-height:1.5;letter-spacing:.2px}.meta span{font-size:14px}.closing .meta{padding:17px}}

/* Supplied transparent portraits: no studio background or side fading. */
.hero .photo{right:-2%;top:5px;bottom:0;width:49%;overflow:hidden}
.hero .photo img{position:absolute;width:172%;height:auto;max-width:none;left:-31%;top:-31%;object-fit:initial;mask-image:linear-gradient(to bottom,#000 0%,#000 73%,transparent 98%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 73%,transparent 98%)}
.hero .photo figcaption{bottom:18px;left:0;right:0;text-align:center}
.about-portrait{position:relative;height:590px;overflow:hidden;align-self:end}
.about .about-portrait img{position:absolute;width:160%;height:auto;max-width:none;left:-30%;top:-23%;object-fit:initial;mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 99%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 99%)}
@media(max-width:900px) and (min-width:601px){.hero .photo{width:44%;right:-4%}.hero .photo img{top:-8%}.about-portrait{height:500px}}
@media(max-width:600px){.hero .photo{position:relative;width:100%;height:490px;right:auto;top:auto;bottom:auto;margin:5px 0 -10px}.hero .photo img{width:155%;left:-24%;top:-28%}.hero .photo figcaption{bottom:18px}.about-portrait{height:460px;width:100%}.about .about-portrait img{width:155%;left:-27%;top:-25%}}
@media(prefers-reduced-motion:no-preference){.pillar.reveal-ready{opacity:0;transform:translateY(34px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0ms)}.pillar.reveal-ready.is-visible{opacity:1;transform:translateY(0)}}
.hero .photo,.about-portrait{mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 80%,transparent 100%)}
.hero .photo figcaption{bottom:65px}

/* Requested portrait alignment and editorial learning panels. */
.about-portrait{align-self:start;margin-top:40px}
.about .about-portrait img{top:0;transform:translateY(-21.5%)}
.learning .pillars{gap:20px;align-items:stretch}
.learning .pillar{padding:28px 24px 30px;border:1px solid #2D1E1820;border-radius:13px;background:var(--cream);box-shadow:0 8px 20px #2D1E180B}
.learning .pillar:nth-child(1){background:var(--olive);color:var(--cream)}
.learning .pillar:nth-child(2){background:var(--cream);color:var(--ink)}
.learning .pillar:nth-child(3){background:#9AA478;color:var(--ink)}
.learning .pillar:nth-child(4){background:var(--ink);color:var(--cream)}
.learning .pillar:nth-child(1) .number,.learning .pillar:nth-child(4) .number{color:var(--cream)}
.learning .pillar h3{line-height:1.15;margin:22px 0 16px}
.learning .pillar p{margin-bottom:0}
@media(max-width:600px){.about-portrait{margin-top:0}.learning .pillar{padding:23px 20px;gap:0 12px}.learning .pillar h3{margin:2px 0 10px}.learning .pillars{gap:16px}}
