/* SSD Event Connect v1.2 — cinematic event management experience */
body.page:has(.ssd-ec) .entry-content{max-width:none;width:100%;margin:0}
body.page:has(.ssd-ec) .single-body{padding-top:30px}
body.page:has(.ssd-ec) .content-hero{padding-bottom:55px}
.ssd-ec{--ec-ink:#271622;--ec-burgundy:#4c253a;--ec-gold:#d9ad76;--ec-cream:#fbf1e7;--ec-muted:#d8c1c8;color:var(--ec-ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}
.ssd-ec *{box-sizing:border-box}
.ssd-ec a{text-decoration:none}
.ssd-ec-lead{padding:clamp(28px,5vw,70px);border:1px solid #784c5f;border-radius:20px;background:radial-gradient(ellipse at 85% 15%,#6b304b,#2a1725 64%);color:#f9eee6;margin:0 0 40px}
.ssd-ec-kicker{font-size:11px;font-weight:750;letter-spacing:.18em;text-transform:uppercase;color:var(--ec-gold);margin-bottom:15px}
.ssd-ec-lead h2{font-family:'Italiana',Georgia,serif!important;font-weight:400!important;line-height:1.08!important;font-size:clamp(43px,5.2vw,76px)!important;letter-spacing:0;margin:0 0 28px!important;color:#fff2e6}
.ssd-ec-lead h2 em{font-style:normal;color:var(--ec-gold)}
.ssd-ec-lead p{font-size:clamp(15px,1.4vw,19px);color:#e8d9d7;max-width:900px;line-height:1.8;margin:0 0 18px}
.ssd-ec-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}
.ssd-ec-button,.ssd-ec-submit{display:inline-flex;justify-content:center;align-items:center;gap:15px;background:var(--ec-gold);color:#271621!important;border:2px solid var(--ec-gold);padding:15px 23px;font-size:13px;font-weight:800;letter-spacing:.045em;min-height:52px;border-radius:7px;text-transform:uppercase;transition:transform .2s ease,background .2s ease,box-shadow .2s ease;cursor:pointer;text-decoration:none!important}
.ssd-ec-button:hover,.ssd-ec-submit:hover{transform:translateY(-2px);background:#f2d4a5;box-shadow:0 10px 25px rgba(0,0,0,.21);color:#25131f!important}
.ssd-ec-button.secondary{background:transparent;color:#fae9dd!important;border-color:#d5ad85}
.ssd-ec-button.secondary:hover{background:#f2d4a5;color:#25131f!important}
.ssd-ec a:focus-visible,.ssd-ec button:focus-visible,.ssd-ec input:focus-visible,.ssd-ec textarea:focus-visible,.ssd-ec select:focus-visible{outline:3px solid #c87998;outline-offset:3px}
.ssd-ec-services{margin:0 0 42px}
.ssd-ec-services h2{font-size:clamp(29px,3.4vw,46px)!important;letter-spacing:-.02em;line-height:1.2!important;font-family:'DM Sans',Arial,sans-serif!important;color:#38202e;margin:4px 0 24px!important}
/* Four equal columns on large monitors; switch to two earlier to protect one-line titles. */
.ssd-ec-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;align-items:stretch}
.ssd-ec-service-card{border:1px solid #cdb1b4;background:#fff9f1;min-width:0;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .22s ease,transform .22s ease}
.ssd-ec-service-card:hover{box-shadow:0 12px 30px rgba(72,28,48,.10);transform:translateY(-2px)}
.ssd-ec-service-media{width:100%;height:clamp(125px,10vw,195px);position:relative;overflow:hidden;background:linear-gradient(130deg,#663950,#341c2d)}
.ssd-ec-service-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(53,17,38,.34),rgba(110,29,59,.11));mix-blend-mode:multiply}
.ssd-ec-service-photo{width:100%;height:100%;object-fit:cover;display:block;object-position:center;filter:sepia(.12) saturate(.79) contrast(1.04)}
.ssd-ec-service-copy{padding:25px 21px 26px;flex:1}
/* No 01–04 labels; each headline stays on a single line at supported sizes. */
.ssd-ec-service-card h3{font-family:'DM Sans',Arial,sans-serif!important;font-size:clamp(14px,1vw,18px)!important;line-height:1.25!important;letter-spacing:-.035em;white-space:nowrap;overflow-wrap:normal;color:#3a2431;margin:0 0 13px!important}
.ssd-ec-service-card p{font-size:14px;line-height:1.6;margin:0;color:#6a505b}
.ssd-ec-form-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.ssd-ec-form-section{border:1px solid #d3b6bc;background:#fffaf4;padding:clamp(22px,2.6vw,36px);border-radius:13px;min-width:0;scroll-margin-top:115px;box-shadow:0 10px 30px rgba(57,27,41,.05)}
.ssd-ec-form-head h2{font-family:'DM Sans',Arial,sans-serif!important;line-height:1.2!important;font-size:clamp(25px,2.3vw,36px)!important;margin:0 0 10px!important;color:#311b29}
.ssd-ec-form-head p{font-size:15px;line-height:1.65;color:#715a66;margin:0 0 26px}
.ssd-ec-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
.ssd-ec-field{margin:0 0 17px;min-width:0}
.ssd-ec-field label,.ssd-ec-checklist legend{font-size:13px;line-height:1.45;font-weight:700;display:block;color:#492839;margin-bottom:7px;letter-spacing:0}
.ssd-ec-field input:not([type=checkbox]),.ssd-ec-field select,.ssd-ec-field textarea{display:block;width:100%;min-width:0;padding:12px 12px;border:1px solid #b996a4;border-radius:5px;background:#fff;color:#24131e!important;font-family:'DM Sans',Arial,sans-serif;font-size:14px;line-height:1.45;box-shadow:none;margin:0}
.ssd-ec-field textarea{min-height:130px;resize:vertical}
.ssd-ec-field input::placeholder,.ssd-ec-field textarea::placeholder{color:#8b7781;opacity:1}
.ssd-ec-field small{font-size:12px;color:#6e5964}
.ssd-ec-checklist{border:0;padding:0;margin:0 0 17px;min-width:0}
.ssd-ec-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}
.ssd-ec-check-grid label{display:flex;align-items:start;gap:7px;font-size:12px;font-weight:500;color:#412433;margin:0!important;line-height:1.4;cursor:pointer}
.ssd-ec-check-grid input,.ssd-ec-consent input{accent-color:#8a3455;flex-shrink:0;margin-top:3px}
.ssd-ec-consent{display:flex;gap:10px;align-items:start;line-height:1.6;font-size:12px;color:#604451;cursor:pointer;margin:8px 0 18px}
.ssd-ec-consent a{color:#7b2c4c;text-decoration:underline}
.ssd-ec-submit{width:100%}
.ssd-ec-fine,.ssd-ec-disclaimer{font-size:12px;line-height:1.6;color:#6f5561}
.ssd-ec-fine{margin:15px 0 0}
.ssd-ec-disclaimer{margin:30px 0 0;border-top:1px solid #cdb9b6;padding-top:18px}
.ssd-ec-trap{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;overflow:hidden!important}
.ssd-ec-alert{background:#fff0dc;color:#412634;border-left:4px solid #8e405f;padding:12px 16px;margin:0 0 17px;font-size:13px}
.ssd-ec-alert.is-success{background:#edf7ed;border-color:#38833f;color:#28422a}
.ssd-ec-single{max-width:840px;margin:auto}
@media(max-width:1500px){.ssd-ec-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssd-ec-service-card h3{font-size:clamp(16px,1.55vw,21px)!important}.ssd-ec-service-media{height:165px}}
@media(max-width:1100px){.ssd-ec-form-layout{grid-template-columns:1fr;gap:28px}}
@media(max-width:650px){.ssd-ec-lead{padding:27px 21px;border-radius:12px}.ssd-ec-actions{flex-direction:column}.ssd-ec-button{width:100%}.ssd-ec-service-grid,.ssd-ec-form-grid{grid-template-columns:1fr}.ssd-ec-service-copy{padding:21px 16px 24px}.ssd-ec-service-card h3{font-size:clamp(11.8px,3.7vw,19px)!important;letter-spacing:-.05em}.ssd-ec-service-media{height:170px}.ssd-ec-check-grid{grid-template-columns:1fr 1fr}.ssd-ec-form-section{padding:21px 17px}.ssd-ec-services h2{font-size:30px!important}}
@media(prefers-reduced-motion:reduce){.ssd-ec-button,.ssd-ec-submit,.ssd-ec-service-card{transition:none}.ssd-ec-service-card:hover{transform:none}}

/* The shortcode supplies its own hero/H1, so the theme's generic page title is omitted. */
body.page:has(.ssd-ec-landing) .content-hero{display:none}
body.page:has(.ssd-ec-landing) .single-body{padding-top:clamp(110px,10vw,154px);padding-bottom:90px}
body.page:has(.ssd-ec-landing) .entry-content{max-width:none;width:100%;margin:0}
.ssd-ec-landing{--ec-gold:#ebbf89;isolation:isolate}

/* An editorial, photographic entrance instead of a giant text block. */
.ssd-ec-landing .ssd-ec-lead{position:relative;isolation:isolate;overflow:hidden;min-height:clamp(620px,67vw,785px);display:flex;align-items:center;padding:clamp(36px,7.1vw,100px);border:1px solid rgba(255,210,167,.32);border-radius:22px;margin:0 0 35px;background:#2d1525;box-shadow:0 22px 65px rgba(38,15,28,.19)}
.ssd-ec-hero-image{position:absolute;inset:0;z-index:-3;overflow:hidden}
.ssd-ec-hero-photo{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block;transform:scale(1.02);animation:ssdEcCinematicDrift 23s ease-in-out infinite alternate;will-change:transform}
.ssd-ec-landing .ssd-ec-lead:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(30,9,24,.68) 0%,rgba(35,10,27,.63) 29%,rgba(41,13,31,.24) 58%,rgba(25,8,18,.04) 100%),linear-gradient(0deg,rgba(26,10,21,.64),transparent 21%,transparent 75%,rgba(28,9,24,.26));pointer-events:none}
.ssd-ec-landing .ssd-ec-lead:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 54% 70% at 12% 38%,rgba(42,13,32,.48),transparent),linear-gradient(110deg,rgba(244,177,133,.06),transparent 60%);pointer-events:none}
.ssd-ec-hero-content{position:relative;max-width:780px;padding:10px 0 70px;animation:ssdEcHeroAppear .95s cubic-bezier(.22,.68,.26,1) both}
.ssd-ec-hero-overline{display:flex;align-items:center;gap:9px;color:#f2d2ab;font-size:clamp(11px,.85vw,14px);letter-spacing:.19em;font-weight:800;margin:0 0 clamp(28px,5.1vw,66px);text-shadow:0 2px 10px rgba(0,0,0,.5)}
.ssd-ec-hero-overline .ssd-ec-hero-diamond{font-family:Georgia,serif;font-size:23px;font-weight:400;line-height:1;color:#efc998}
.ssd-ec-hero-overline-sep{color:rgba(252,219,185,.57);margin:0 4px}
.ssd-ec-landing .ssd-ec-lead .ssd-ec-kicker{margin:0 0 15px;color:#f1cfa6;font-size:clamp(10px,.73vw,12px);letter-spacing:.15em;line-height:1.5}
.ssd-ec-landing .ssd-ec-lead h1{font-family:'Italiana',Georgia,serif!important;font-size:clamp(54px,4.6vw,76px)!important;font-weight:400!important;line-height:1.06!important;letter-spacing:-.022em;color:#fff5eb;margin:0 0 24px!important;text-wrap:balance;text-shadow:0 3px 26px rgba(20,7,19,.32)}
.ssd-ec-landing .ssd-ec-lead h1 em{color:#e9b47f;font-style:normal}
.ssd-ec-landing .ssd-ec-hero-promise{font-size:clamp(16px,1.35vw,21px);line-height:1.55;max-width:630px;color:#f6e6dd;margin:0;text-shadow:0 2px 12px rgba(0,0,0,.42);font-weight:450}
.ssd-ec-landing .ssd-ec-actions{margin-top:30px;gap:13px}
.ssd-ec-landing .ssd-ec-button{min-height:53px;padding:14px 24px;font-size:12px;letter-spacing:.07em;border-radius:4px;background:#edc290;border-color:#edc290;box-shadow:0 5px 23px rgba(18,6,14,.18)}
.ssd-ec-landing .ssd-ec-button.secondary{color:#fff5ec!important;border-color:rgba(255,237,212,.78);background:rgba(29,9,22,.15);backdrop-filter:blur(10px)}
.ssd-ec-landing .ssd-ec-button.secondary:hover{background:#f3d2a5;color:#261322!important}
.ssd-ec-hero-foot{position:absolute;left:clamp(36px,7.1vw,100px);bottom:27px;right:clamp(36px,7.1vw,100px);border-top:1px solid rgba(255,225,190,.38);padding-top:17px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:10px;font-weight:750;letter-spacing:.17em;color:#f7d2aa;text-shadow:0 2px 5px rgba(0,0,0,.6)}
.ssd-ec-hero-scroll{display:inline-block;margin-left:8px;font-size:20px;line-height:0;animation:ssdEcNudge 2.4s ease-in-out infinite}

/* Keep the editable long-form explanation, but below the imagery and calls to action. */
.ssd-ec-story-panel{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);gap:clamp(24px,5vw,80px);align-items:start;margin:0 0 58px;padding:clamp(22px,3.5vw,42px) clamp(4px,3vw,30px) clamp(20px,3.5vw,45px);border-bottom:1px solid #d6bbad}
.ssd-ec-story-heading .ssd-ec-kicker{display:block;margin:0 0 14px;color:#995374}
.ssd-ec-story-panel h2{font-family:'Italiana',Georgia,serif!important;font-weight:400!important;font-size:clamp(31px,3.15vw,50px)!important;line-height:1.12!important;color:#42263a;margin:0!important}
.ssd-ec-story-panel h2 em{font-style:normal;color:#a04a71}
.ssd-ec-story-copy{border-left:2px solid #d2a277;padding-left:clamp(16px,2.6vw,36px)}
.ssd-ec-story-copy p{margin:0 0 11px;font-size:clamp(14px,1.1vw,17px);line-height:1.68;color:#574250}
.ssd-ec-story-copy p:last-child{margin-bottom:0}
.ssd-ec-service-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px}
.ssd-ec-service-heading h2{font-family:'Italiana',Georgia,serif!important;line-height:1.06!important;font-weight:400!important;font-size:clamp(36px,4.1vw,62px)!important;margin:0!important;color:#38202e}
.ssd-ec-service-heading h2 em{font-style:normal;color:#984d72}
.ssd-ec-service-heading-note{font-size:10px;letter-spacing:.14em;font-weight:800;color:#995b68;max-width:230px;text-align:right;line-height:1.7;margin-bottom:5px}
.ssd-ec-landing .ssd-ec-service-card{border-radius:15px;box-shadow:0 10px 30px rgba(81,34,55,.07);transform:translateY(0);transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease}
.ssd-ec-landing .ssd-ec-service-card:hover{transform:translateY(-7px);box-shadow:0 20px 40px rgba(81,34,55,.17);border-color:#b67c93}
.ssd-ec-landing .ssd-ec-service-media{height:clamp(150px,13vw,235px)}
.ssd-ec-landing .ssd-ec-service-photo{transition:transform .9s cubic-bezier(.2,.6,.2,1);filter:saturate(.97) contrast(1.04)}
.ssd-ec-landing .ssd-ec-service-card:hover .ssd-ec-service-photo{transform:scale(1.075)}
.ssd-ec-landing .ssd-ec-service-copy{padding:22px 19px 26px}
.ssd-ec-landing .ssd-ec-service-card h3{white-space:normal;font-size:clamp(16px,1.15vw,20px)!important;line-height:1.28!important}
.ssd-ec-landing .ssd-ec-service-card p{font-size:14px;line-height:1.55}

@keyframes ssdEcCinematicDrift{0%{transform:scale(1.02) translateX(0)}100%{transform:scale(1.09) translateX(-.7%)}}
@keyframes ssdEcHeroAppear{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes ssdEcNudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(max-width:1200px){.ssd-ec-landing .ssd-ec-lead{min-height:640px}.ssd-ec-landing .ssd-ec-lead h1{font-size:clamp(49px,5.1vw,67px)!important}.ssd-ec-hero-content{max-width:670px}}
@media(max-width:780px){.ssd-ec-landing .ssd-ec-lead{min-height:690px;padding:42px 36px}.ssd-ec-landing .ssd-ec-lead:before{background:linear-gradient(90deg,rgba(30,9,24,.86),rgba(35,10,27,.68) 60%,rgba(35,10,27,.2)),linear-gradient(0deg,rgba(26,10,21,.65),transparent 40%)}.ssd-ec-hero-content{padding-bottom:75px}.ssd-ec-hero-foot{left:36px;right:36px}.ssd-ec-story-panel{grid-template-columns:1fr;gap:20px;margin-bottom:40px}.ssd-ec-service-heading-note{display:none}}
@media(max-width:650px){body.page:has(.ssd-ec-landing) .single-body{padding-top:94px}.ssd-ec-landing .ssd-ec-lead{min-height:620px;padding:28px 23px;border-radius:14px;margin-bottom:20px}.ssd-ec-hero-photo{object-position:64% center}.ssd-ec-landing .ssd-ec-lead:before{background:linear-gradient(90deg,rgba(30,9,24,.86),rgba(35,10,27,.64)),linear-gradient(0deg,rgba(26,10,21,.68),transparent 45%)}.ssd-ec-hero-overline{font-size:10px;letter-spacing:.1em;gap:6px;margin-bottom:47px}.ssd-ec-hero-overline .ssd-ec-hero-diamond{font-size:18px}.ssd-ec-landing .ssd-ec-lead .ssd-ec-kicker{font-size:10px;letter-spacing:.12em}.ssd-ec-landing .ssd-ec-lead h1{font-size:clamp(45px,10vw,67px)!important;line-height:1.07!important;margin-bottom:22px!important}.ssd-ec-landing .ssd-ec-hero-promise{font-size:15px;line-height:1.5}.ssd-ec-landing .ssd-ec-actions{gap:11px;margin-top:26px}.ssd-ec-landing .ssd-ec-button{width:100%;min-height:48px;font-size:11px;padding:11px 16px}.ssd-ec-hero-foot{left:23px;right:23px;bottom:17px;font-size:8px;letter-spacing:.06em}.ssd-ec-hero-foot>span:last-child{display:none}.ssd-ec-story-panel{padding:22px 8px 27px;gap:18px}.ssd-ec-story-copy{padding-left:17px}.ssd-ec-story-copy p{font-size:14px}.ssd-ec-service-heading{margin-bottom:20px}.ssd-ec-service-heading h2{font-size:clamp(35px,8vw,47px)!important}.ssd-ec-landing .ssd-ec-service-media{height:210px}.ssd-ec-landing .ssd-ec-service-card h3{font-size:19px!important}}
@media(prefers-reduced-motion:reduce){.ssd-ec-hero-photo,.ssd-ec-hero-content,.ssd-ec-hero-scroll{animation:none!important}.ssd-ec-landing .ssd-ec-service-photo,.ssd-ec-landing .ssd-ec-service-card{transition:none!important}.ssd-ec-landing .ssd-ec-service-card:hover{transform:none}.ssd-ec-landing .ssd-ec-service-card:hover .ssd-ec-service-photo{transform:none}}
