:root{--green:#127B5D;--pink:#FAC2D4;--ink:#153f33}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:white;font:17px/1.65 Arial,Helvetica,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid #b34770;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}.wrap{max-width:1280px;margin:auto;padding-left:48px;padding-right:48px}header{min-height:115px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:42px;line-height:.85;font-weight:950;letter-spacing:-3px;text-decoration:none;color:var(--green)}.brand span{display:block;font-size:10px;line-height:1.3;letter-spacing:1.6px;margin-top:12px}nav{display:flex;gap:32px}nav a{font-size:14px;font-weight:bold;text-decoration:none}nav a:hover{text-decoration:underline}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;background:var(--green);color:white;border-radius:5px;padding:17px 25px;font-size:15px;font-weight:bold;text-decoration:none;transition:background .2s}.button:hover{background:#0b5943}.button.small{padding:12px 21px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:50px;padding-top:40px;padding-bottom:80px;align-items:center}.eyebrow{font-size:12px;font-weight:800;letter-spacing:1.8px;margin:0 0 25px}h1,h2,h3{font-weight:950;letter-spacing:-.055em;line-height:1.04;margin:0;color:var(--green)}h1{font-size:clamp(65px,7.6vw,100px)}h1 span{position:relative;z-index:0;white-space:nowrap}h1 span:after{content:'';position:absolute;bottom:2px;left:0;width:100%;height:24%;background:var(--pink);z-index:-1}.intro{font-size:19px;max-width:445px;margin:28px 0}.signature{font-size:12px;margin:24px 0 0}.hero-photo{height:585px;position:relative;padding-bottom:22px}.hero-photo img{border-radius:180px 180px 7px 7px}.note{background:var(--pink);padding:25px 28px;position:absolute;right:-15px;bottom:0;transform:rotate(-5deg);font-weight:900;font-size:25px;line-height:1.1;letter-spacing:-1px}.note span{float:left;font-size:50px;margin-right:13px}.ribbon{background:var(--green);color:white;padding:20px 0;font-size:12px;font-weight:bold;letter-spacing:2px}.ribbon .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.ribbon span{color:var(--pink);font-size:24px}.section{padding-top:95px;padding-bottom:95px}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:end}.section-head p{margin:0;max-width:395px}h2{font-size:clamp(40px,4.2vw,58px)}h3{font-size:34px;letter-spacing:-1.5px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.services article{border-top:1px solid #abc2b9;padding-top:24px;display:flex;flex-direction:column;align-items:flex-start}.number{font-size:13px;margin:0 0 25px}.services p:not(.number){font-size:16px;margin:24px 0}.text-link{display:inline-block;text-decoration:none;font-weight:bold;font-size:15px;border-bottom:1px solid;padding-bottom:4px}.services .text-link{margin-top:auto}.popups{background:var(--green);color:white}.popups:before{content:'';height:12px;display:block;background:repeating-linear-gradient(90deg,var(--pink) 0 7px,var(--green) 7px 17px)}.popup-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:105px;padding-top:80px;padding-bottom:80px}.popups h2{font-size:clamp(44px,4.7vw,65px);color:white}.popups h2 span,.popups .eyebrow{color:var(--pink)}.popups h3{color:white;font-size:30px}.popups p:not(.eyebrow){max-width:450px}.options p:not(.eyebrow){font-size:16px}.options .eyebrow{margin-bottom:12px}.options article+article{margin-top:32px;border-top:1px solid #ffffff50;padding-top:30px}.pink{background:var(--pink);color:var(--ink)}.pink:hover{background:#f3aac3}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.workshop-photo{height:535px;position:relative}.workshop-photo img{border-radius:6px}.workshop-photo span{position:absolute;bottom:20px;left:20px;right:20px;background:white;padding:14px;text-align:center;font-size:11px;letter-spacing:1px;font-weight:bold}.about h2{font-size:44px}.about p:not(.eyebrow){font-size:16px}.about .text-link{margin-top:10px}.contact{text-align:center;background:#fff5f8;padding:75px 0 80px}.contact h2{font-size:clamp(48px,6vw,78px)}.contact h2 span{font-size:65px;letter-spacing:0}.contact p:not(.eyebrow){margin:27px 0}.email{display:block;font-size:15px;margin-top:20px;text-underline-offset:4px;overflow-wrap:anywhere}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:40px;padding-bottom:40px}footer p{font-size:12px}footer .brand{font-size:30px}footer .brand span{font-size:8px}@media(max-width:900px){.wrap{padding-left:28px;padding-right:28px}.hero{gap:25px}.hero h1{font-size:72px}.hero-photo{height:520px}.note{right:0;font-size:20px}.section-head{gap:35px}.services{gap:25px}.popup-grid{gap:45px}.about{gap:40px}nav{gap:18px}}@media(max-width:650px){.wrap{padding-left:22px;padding-right:22px}header{min-height:90px;flex-wrap:wrap;padding-top:24px;padding-bottom:18px;gap:20px}.brand{font-size:35px}nav{order:3;width:100%;justify-content:space-between;border-top:1px solid #e5ede8;padding-top:15px}nav a{font-size:13px}.button.small{font-size:13px;padding:10px 16px}.hero{grid-template-columns:1fr;padding-top:28px;padding-bottom:45px;gap:35px}.hero h1{font-size:clamp(60px,16vw,88px)}.eyebrow{font-size:11px;letter-spacing:1.3px}.intro{font-size:17px}.hero-photo{height:420px;max-width:450px;width:100%;margin:auto}.hero-photo img{border-radius:150px 150px 7px 7px}.note{right:0;padding:20px 23px}.ribbon .wrap{justify-content:center;flex-wrap:wrap;gap:10px 14px;font-size:10px}.ribbon{letter-spacing:1px}.section{padding-top:60px;padding-bottom:60px}.section-head{display:block}.section-head p{margin-top:25px}.services{grid-template-columns:1fr;gap:35px;margin-top:40px}.services article{padding-top:20px}.number{margin-bottom:16px}.services h3 br{display:none}.services p:not(.number){margin:18px 0}.popup-grid{grid-template-columns:1fr;gap:40px;padding-top:55px;padding-bottom:55px}.popups h2{font-size:48px}.about{grid-template-columns:1fr;gap:38px}.workshop-photo{height:360px}.about h2{font-size:42px}.contact{padding:55px 0}.contact h2 span{font-size:42px}.contact p br{display:none}footer{flex-wrap:wrap}footer p{margin:0}footer p:last-child{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Real event photography: responsive framing preserves the originals. */
.hero-photo img{object-position:50% 48%}.workshop-photo img{object-position:50% 25%}.event-photos{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-bottom:85px}.event-photos figure{margin:0}.event-photos img{height:390px;border-radius:6px;object-position:center 52%}.event-photos figcaption{font-size:14px;font-weight:700;margin-top:14px;color:var(--green)}@media(max-width:650px){.event-photos{gap:28px;grid-template-columns:1fr;padding-bottom:55px}.event-photos img{height:360px}.workshop-photo{height:460px}.workshop-photo img{object-position:50% 20%}}
