.elementor-50034 .elementor-element.elementor-element-c99284a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:110px;--padding-bottom:110px;--padding-left:0px;--padding-right:0px;}.elementor-50034 .elementor-element.elementor-element-c99284a:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-c99284a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B1220;}.elementor-50034 .elementor-element.elementor-element-26c2362{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-50034 .elementor-element.elementor-element-3cfab1a{text-align:left;}.elementor-50034 .elementor-element.elementor-element-3cfab1a .elementor-heading-title{color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-50034 .elementor-element.elementor-element-109cfa1{font-weight:400;text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-50034 .elementor-element.elementor-element-ec34278 .elementor-button{background-color:#4F46E5;fill:#ffffff;color:#ffffff;}.elementor-50034 .elementor-element.elementor-element-69e8932{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-50034 .elementor-element.elementor-element-357b948{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-50034 .elementor-element.elementor-element-fdec672{text-align:center;}.elementor-50034 .elementor-element.elementor-element-a6987ea:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-a6987ea > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-50034 .elementor-element.elementor-element-a6987ea{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-a6987ea > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-c8e2d88{text-align:center;}.elementor-50034 .elementor-element.elementor-element-087e19d{text-align:center;}.elementor-50034 .elementor-element.elementor-element-61a1eb6{text-align:center;}.elementor-50034 .elementor-element.elementor-element-fac5bc8{text-align:center;}.elementor-50034 .elementor-element.elementor-element-af1c1b8{text-align:center;}.elementor-50034 .elementor-element.elementor-element-85b61b7{text-align:center;}.elementor-50034 .elementor-element.elementor-element-40060a8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-50034 .elementor-element.elementor-element-758f196{text-align:center;}.elementor-50034 .elementor-element.elementor-element-c0468b8:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-c0468b8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-50034 .elementor-element.elementor-element-c0468b8{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-c0468b8 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-8dc9d2c{text-align:left;}.elementor-50034 .elementor-element.elementor-element-c12cdd1{text-align:left;}.elementor-50034 .elementor-element.elementor-element-4e98600{text-align:left;}.elementor-50034 .elementor-element.elementor-element-913b541{text-align:left;}.elementor-50034 .elementor-element.elementor-element-1668e4a{text-align:left;}.elementor-50034 .elementor-element.elementor-element-40d4038{text-align:left;}.elementor-50034 .elementor-element.elementor-element-681de93{text-align:left;}.elementor-50034 .elementor-element.elementor-element-0396d7b{text-align:left;}.elementor-50034 .elementor-element.elementor-element-fcfdc12{text-align:left;}.elementor-50034 .elementor-element.elementor-element-933c80d{--display:flex;}.elementor-50034 .elementor-element.elementor-element-ef56d72{text-align:center;}.elementor-50034 .elementor-element.elementor-element-ef56d72 .elementor-heading-title{font-size:35px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-a3d36e2:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-a3d36e2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-50034 .elementor-element.elementor-element-a3d36e2{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-a3d36e2 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-b8f9a8a{text-align:center;}.elementor-50034 .elementor-element.elementor-element-b8f9a8a .elementor-heading-title{font-size:28px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-d2c5a44{text-align:center;}.elementor-50034 .elementor-element.elementor-element-1a83dde{text-align:center;}.elementor-50034 .elementor-element.elementor-element-1a83dde .elementor-heading-title{font-size:28px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-42eb6ec{text-align:center;}.elementor-50034 .elementor-element.elementor-element-22192f2{text-align:center;}.elementor-50034 .elementor-element.elementor-element-22192f2 .elementor-heading-title{font-size:28px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-9dd7e49{text-align:center;}.elementor-50034 .elementor-element.elementor-element-129e110{text-align:center;}.elementor-50034 .elementor-element.elementor-element-129e110 .elementor-heading-title{font-size:28px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-c45431b{text-align:center;}.elementor-50034 .elementor-element.elementor-element-9a11818:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-9a11818 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-50034 .elementor-element.elementor-element-9a11818{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-9a11818 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-285e7f9{text-align:left;}.elementor-50034 .elementor-element.elementor-element-53720c0{text-align:left;}.elementor-50034 .elementor-element.elementor-element-e351dab{text-align:left;}.elementor-50034 .elementor-element.elementor-element-7bc094e{text-align:left;}.elementor-50034 .elementor-element.elementor-element-4ba6d1a{--display:flex;}.elementor-50034 .elementor-element.elementor-element-4eadb5d{text-align:center;}.elementor-50034 .elementor-element.elementor-element-4eadb5d .elementor-heading-title{font-size:30px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-31900d2{--display:flex;}.elementor-50034 .elementor-element.elementor-element-41c0c34{width:var( --container-widget-width, 102.234% );max-width:102.234%;--container-widget-width:102.234%;--container-widget-flex-grow:0;text-align:center;}.elementor-50034 .elementor-element.elementor-element-41c0c34.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-50034 .elementor-element.elementor-element-54fa957:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-54fa957 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-50034 .elementor-element.elementor-element-54fa957{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-54fa957 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-21666c4{text-align:center;}.elementor-50034 .elementor-element.elementor-element-21666c4 .elementor-heading-title{font-size:30px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-c0609b6{text-align:center;}.elementor-50034 .elementor-element.elementor-element-508aa44{text-align:left;}.elementor-50034 .elementor-element.elementor-element-c704a70:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-c704a70 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-50034 .elementor-element.elementor-element-c704a70{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-c704a70 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-94b06a7{text-align:center;}.elementor-50034 .elementor-element.elementor-element-94b06a7 .elementor-heading-title{font-size:30px;font-weight:600;}.elementor-50034 .elementor-element.elementor-element-d249765{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-50034 .elementor-element.elementor-element-d6ecc9b:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-d6ecc9b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-50034 .elementor-element.elementor-element-d6ecc9b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-d6ecc9b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-d6b0d97{text-align:center;}.elementor-widget-accordion .elementor-accordion-icon, .elementor-widget-accordion .elementor-accordion-title{color:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-accordion-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon, .elementor-widget-accordion .elementor-active .elementor-accordion-title{color:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-active .elementor-accordion-icon svg{fill:var( --e-global-color-accent );}.elementor-widget-accordion .elementor-accordion-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-accordion .elementor-tab-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-50034 .elementor-element.elementor-element-2c6cdd9:not(.elementor-motion-effects-element-type-background), .elementor-50034 .elementor-element.elementor-element-2c6cdd9 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0F172A;}.elementor-50034 .elementor-element.elementor-element-2c6cdd9{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:80px 0px 80px 0px;}.elementor-50034 .elementor-element.elementor-element-2c6cdd9 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-50034 .elementor-element.elementor-element-72fc34f{text-align:center;}.elementor-50034 .elementor-element.elementor-element-72fc34f .elementor-heading-title{font-size:35px;font-weight:700;color:#FFFFFF;}.elementor-50034 .elementor-element.elementor-element-9bdd759{text-align:center;}.elementor-50034 .elementor-element.elementor-element-a87bbdc .elementor-button{background-color:#4F46E5;fill:#ffffff;color:#ffffff;}.elementor-50034 .elementor-element.elementor-element-5f85e64 .elementor-button{background-color:#4F46E5;fill:#ffffff;color:#ffffff;}.elementor-50034 .elementor-element.elementor-element-a00e8ea .elementor-button{background-color:#4F46E5;fill:#ffffff;color:#ffffff;}@media(max-width:1024px){.elementor-50034 .elementor-element.elementor-element-d249765{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-50034 .elementor-element.elementor-element-d249765{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS *//* ========================================================== Jousting Rentals — Elementor Single Page (ID 50034) Full-width fix + premium styling (page-scoped) ========================================================== */ /* ---------- 0) Page scope & design tokens ---------- */ .elementor-50034{ --pp-bg: #f6f4fb; --pp-bg2: #ffffff; --pp-text: #232936; --pp-muted: #616b7b; --pp-brand: #573288; --pp-brand-2: #321854; --pp-accent: #01847f; --pp-glow: rgba(87,50,136,.28); --pp-radius-lg: 18px; --pp-radius-sm: 12px; --pp-shadow: 0 14px 36px rgba(25,18,45,.14); --pp-shadow-hover: 0 22px 48px rgba(25,18,45,.22); --pp-sec-pad: clamp(36px, 6vw, 96px); --pp-gap: clamp(16px, 2.2vw, 30px); --pp-maxw: min(1280px, 92vw); background: radial-gradient(1200px 800px at 8% -10%, #efe8ff 0%, transparent 60%), radial-gradient(1200px 800px at 110% 10%, #e6fbf9 0%, transparent 55%), var(--pp-bg); color: var(--pp-text); } /* ---------- 1) FULL WIDTH FIX (this page only) ---------- */ /* Remove any theme width caps around the Elementor canvas */ body.elementor-page-50034 #container{ width:100%; max-width:none; padding:0; margin:0; } /* Make both classic Sections and new Flex Containers span wide */ .elementor-50034 .elementor-section.elementor-section-boxed > .elementor-container, .elementor-50034 .e-con-boxed > .e-con-inner{ max-width: 100% !important; /* truly full width */ width: 100% !important; padding-inline: clamp(16px, 4vw, 54px); } /* Optional: keep content readable by constraining inner columns */ .elementor-50034 .elementor-container, .elementor-50034 .e-con-inner{ gap: var(--pp-gap); } .elementor-50034 .elementor-column > .elementor-widget-wrap{ max-width: var(--pp-maxw); margin-inline: auto; } /* ---------- 2) Global spacing for this page ---------- */ .elementor-50034 .elementor-section{ padding-block: var(--pp-sec-pad); } @media (max-width: 767px){ .elementor-50034 .elementor-section{ padding-block: clamp(28px, 8vw, 52px); } } /* ---------- 3) Typography ---------- */ .elementor-50034 :is(h1,h2,h3,h4,h5){ font-family: "Kanit", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif; line-height: 1.15; margin: 0 0 .6em; color: var(--pp-brand-2); text-wrap: balance; } .elementor-50034 h1.elementor-heading-title{ font-weight: 900; font-size: clamp(30px, 3.4vw + 10px, 56px); } .elementor-50034 h2.elementor-heading-title{ font-weight: 800; font-size: clamp(26px, 2.4vw + 10px, 42px); } .elementor-50034 h3.elementor-heading-title{ font-weight: 800; font-size: clamp(22px, 1.6vw + 10px, 30px); background: linear-gradient(135deg, var(--pp-brand), var(--pp-brand-2)); -webkit-background-clip: text; background-clip: text; color: transparent; } .elementor-50034 :is(p,li,dd,dt){ font-family: "Cabin", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, sans-serif; font-size: clamp(16px, .5vw + 15px, 18.5px); line-height: 1.74; color: var(--pp-text); } /* keep long copy comfortable on widescreens */ @media (min-width: 1200px){ .elementor-50034 .elementor-widget-text-editor{ max-width: 74ch; } } /* ---------- 4) Hero polish (first section) ---------- */ .elementor-50034 .elementor-top-section:first-of-type{ position: relative; background: linear-gradient(180deg, rgba(87,50,136,.06), rgba(1,132,127,.05)); overflow: clip; } .elementor-50034 .elementor-top-section:first-of-type::before{ content:""; position:absolute; inset:auto -10% -25% auto; width:520px; height:520px; background: radial-gradient(closest-side, rgba(87,50,136,.16), transparent 70%); pointer-events:none; filter: blur(2px); } /* ---------- 5) Luxe Cards (columns: thirds & quarters) ---------- */ .elementor-50034 :is(.elementor-column.elementor-col-33, .elementor-column.elementor-col-25) > .elementor-widget-wrap{ position: relative; background: linear-gradient(180deg, rgba(255,255,255,.85), rgba(255,255,255,.96)); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); border-radius: var(--pp-radius-lg); border: 1px solid rgba(87,50,136,.14); box-shadow: var(--pp-shadow); padding: clamp(22px, 2.6vw, 34px); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; overflow: clip; } /* gradient top stripe */ .elementor-50034 :is(.elementor-column.elementor-col-33, .elementor-column.elementor-col-25) > .elementor-widget-wrap::before{ content:""; position:absolute; inset:0 0 auto 0; height:6px; background: linear-gradient(90deg, var(--pp-brand), var(--pp-accent), var(--pp-brand-2)); opacity:.95; } /* hover lift */ .elementor-50034 :is(.elementor-column.elementor-col-33, .elementor-column.elementor-col-25) > .elementor-widget-wrap:hover{ transform: translateY(-6px); box-shadow: var(--pp-shadow-hover), 0 0 0 1px rgba(87,50,136,.08); border-color: rgba(87,50,136,.22); } /* tidy inner spacing */ .elementor-50034 :is(.elementor-column.elementor-col-33, .elementor-column.elementor-col-25) .elementor-widget:not(:last-child){ margin-bottom: clamp(12px, 1.6vw, 20px); } /* ---------- 6) Gradient Check pills for all UL lists ---------- */ .elementor-50034 .elementor-widget-text-editor ul{ margin: .8em 0 1.3em; padding: 0; list-style: none; } .elementor-50034 .elementor-widget-text-editor ul li{ position: relative; padding-left: 36px; margin: .42em 0; } .elementor-50034 .elementor-widget-text-editor ul li::before{ content:""; position:absolute; left: 0; top: .38em; width: 24px; height: 24px; border-radius: 999px; background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.9), rgba(255,255,255,0) 60%), conic-gradient(from 220deg, var(--pp-brand) 0 40%, var(--pp-accent) 40% 70%, var(--pp-brand-2) 70% 100%); box-shadow: 0 4px 10px var(--pp-glow); } .elementor-50034 .elementor-widget-text-editor ul li::after{ content:"✓"; position:absolute; left: 0; top: .38em; width: 24px; height: 24px; display:grid; place-items:center; font-weight: 900; font-size: 13px; color:#fff; text-shadow: 0 1px 0 rgba(0,0,0,.25); } .elementor-50034 .elementor-widget-text-editor ul li:hover::before{ filter: brightness(1.06); box-shadow: 0 6px 14px rgba(87,50,136,.36); } /* nested lists: keep simple bullets */ .elementor-50034 .elementor-widget-text-editor ul ul{ margin-top:.35em; padding-left:18px; list-style: disc; } .elementor-50034 .elementor-widget-text-editor ul ul > li{ padding-left:0; } .elementor-50034 .elementor-widget-text-editor ul ul > li::before, .elementor-50034 .elementor-widget-text-editor ul ul > li::after{ content:none; } /* add subtle divider when a paragraph precedes a UL */ .elementor-50034 .elementor-widget-text-editor p + ul{ margin-top: 14px; padding-top: 12px; border-top: 1px dashed rgba(87,50,136,.18); } /* ---------- 7) Buttons ---------- */ .elementor-50034 .elementor-button{ --padY: clamp(12px, .9vw, 16px); --padX: clamp(18px, 2vw, 26px); padding: var(--padY) var(--padX); border-radius: 14px; border: 0; font-weight: 900; letter-spacing: .02em; color:#fff; background: linear-gradient(135deg, var(--pp-brand), var(--pp-brand-2)); box-shadow: 0 8px 22px var(--pp-glow); transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; } .elementor-50034 .elementor-button:hover{ transform: translateY(-2px); box-shadow: 0 14px 30px rgba(87,50,136,.36); filter: brightness(1.05); } .elementor-50034 .elementor-button:focus-visible{ outline: 3px solid rgba(87,50,136,.45); outline-offset: 2px; } /* ---------- 8) Accordion (FAQ) ---------- */ .elementor-50034 .elementor-accordion .elementor-accordion-item{ background: var(--pp-bg2); border: 1px solid rgba(87,50,136,.14); border-radius: var(--pp-radius-sm); box-shadow: 0 4px 14px rgba(25,18,45,.08); margin-bottom: 12px; overflow: hidden; } .elementor-50034 .elementor-accordion .elementor-tab-title{ padding: 16px 18px; font-weight: 800; color: var(--pp-brand-2); } .elementor-50034 .elementor-accordion .elementor-tab-title[aria-expanded="true"]{ background: linear-gradient(180deg, rgba(87,50,136,.06), rgba(1,132,127,.06)); border-bottom: 1px solid rgba(87,50,136,.14); } .elementor-50034 .elementor-accordion .elementor-tab-content{ padding: 14px 18px 18px; color: var(--pp-text); } /* ---------- 9) Images (nice rounding & shadow) ---------- */ .elementor-50034 .elementor-widget-image img{ display:block; width:100%; height:auto; border-radius: var(--pp-radius-sm); box-shadow: var(--pp-shadow); } /* ---------- 10) Mobile layout tweaks ---------- */ @media (max-width: 767px){ .elementor-50034 .elementor-container, .elementor-50034 .e-con-inner{ gap: 16px; } .elementor-50034 :is(.elementor-column.elementor-col-33, .elementor-column.elementor-col-25) > .elementor-widget-wrap{ padding: clamp(18px, 4.4vw, 26px); border-radius: 16px; } } /* ---------- 11) Respect any white text you set inline ---------- */ .elementor-50034 [style*="color:#FFFFFF"], .elementor-50034 [style*="color: #FFFFFF"]{ color:#fff !important; } /* ---------- 12) (Optional) tighten heading blocks above lists ---------- */ .elementor-50034 .elementor-widget-heading + .elementor-widget-text-editor{ margin-top: .2rem; }


/* Force white text for any widget/section using `pp-text-white` */
.pp-text-white,
.pp-text-white .elementor-widget-container,
.pp-text-white .elementor-widget,
.pp-text-white .elementor-heading-title,
.pp-text-white .elementor-text-editor,
.pp-text-white p,
.pp-text-white li,
.pp-text-white span,
.pp-text-white h1,
.pp-text-white h2,
.pp-text-white h3,
.pp-text-white h4,
.pp-text-white h5,
.pp-text-white h6 {
  color: #ffffff !important;
}

/* Kill “muted” opacity some themes add on text blocks */
.pp-text-white .elementor-widget-container,
.pp-text-white .elementor-text-editor {
  opacity: 1 !important;
}

/* Links inside stay white, with subtle hover */
.pp-text-white a { color: #ffffff !important; text-decoration: underline; }
.pp-text-white a:hover { text-decoration: none; opacity: 0.9; }

/* Lists and icons */
.pp-text-white .elementor-icon-list-text,
.pp-text-white .elementor-icon-list-icon i,
.pp-text-white .elementor-icon-list-icon svg {
  color: #ffffff !important;
  fill: #ffffff !important;
}

/* Don’t mess up Elementor buttons (keep their designed colors) */
.pp-text-white .elementor-button,
.pp-text-white .elementor-button * {
  color: inherit;        /* uses whatever the button defines */
}


/* Features/Requirements — light background with dark, readable text
   Usage: add class "pp-features-light" on the SECTION */
.pp-features-light{
  /* easy tweaks */
  --pp-surface: #f7f9fc;
  --pp-card: #ffffff;
  --pp-text: #1f2937;      /* dark slate */
  --pp-accent: #573288;    /* Party Pros purple */
  --pp-accent2:#01847f;    /* teal */
  padding: clamp(28px,5vw,64px) clamp(18px,3.5vw,48px);
  border-radius:16px;
  background:
    radial-gradient(60% 80% at 20% 0%, rgba(87,50,136,.10), transparent 60%),
    radial-gradient(60% 80% at 100% 100%, rgba(1,132,127,.10), transparent 60%),
    var(--pp-surface);
  box-shadow: 0 8px 24px rgba(15,23,42,.08);
  color: var(--pp-text);
}

/* force dark text + cancel theme opacity washout */
.pp-features-light .elementor-widget-container,
.pp-features-light .elementor-text-editor,
.pp-features-light .elementor-heading-title,
.pp-features-light p,
.pp-features-light li,
.pp-features-light span,
.pp-features-light h1,
.pp-features-light h2,
.pp-features-light h3,
.pp-features-light h4,
.pp-features-light h5,
.pp-features-light h6{
  color: var(--pp-text) !important;
  opacity: 1 !important;
  text-shadow: none;
}

/* headings */
.pp-features-light .elementor-widget-heading .elementor-heading-title{
  margin: 0 0 12px; font-weight: 800; letter-spacing: .2px; line-height: 1.2;
}
.pp-features-light .elementor-widget-heading .elementor-heading-title:after{
  content:""; display:block; width:48px; height:3px; margin-top:10px;
  background: linear-gradient(90deg,var(--pp-accent),var(--pp-accent2));
  border-radius:999px;
}

/* lists */
.pp-features-light ul{ list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.pp-features-light li{
  display:flex; align-items:center; gap:12px;
  padding:14px 16px; border-radius:12px;
  background: var(--pp-card);
  border:1px solid #e5e7eb;
  box-shadow: 0 6px 16px rgba(15,23,42,.08);
}

/* check icon */
.pp-features-light li::before{
  content:"✓";
  display:inline-flex; align-items:center; justify-content:center;
  flex:0 0 28px; width:28px; height:28px;
  border-radius:999px;
  background: linear-gradient(135deg,var(--pp-accent),var(--pp-accent2));
  color:#fff; font-weight:900; font-size:14px;
  box-shadow: 0 2px 6px rgba(87,50,136,.25);
}

/* tidy Elementor spacing */
.pp-features-light .elementor-widget-text-editor .elementor-widget-container,
.pp-features-light .elementor-widget-heading .elementor-widget-container{ margin:0; }

/* mobile */
@media (max-width:767px){
  .pp-features-light{ padding:22px 16px; border-radius:12px; }
  .pp-features-light li{ padding:12px 14px; }
}


/* ---------------------------------------------------------
   "Ideal Audiences" block — light surface + dark, readable text
   Usage: add class "pp-audiences-light" on the SECTION
--------------------------------------------------------- */
.pp-audiences-light{
  --pp-surface:#f7f9fc;
  --pp-card:#ffffff;
  --pp-text:#1f2937;    /* dark slate */
  --pp-accent:#573288;  /* purple */
  --pp-accent2:#01847f; /* teal */

  padding: clamp(28px,5vw,64px) clamp(18px,3.5vw,48px);
  border-radius:16px;
  background:
    radial-gradient(50% 70% at 15% 0%, rgba(87,50,136,.08), transparent 60%),
    radial-gradient(50% 70% at 85% 100%, rgba(1,132,127,.08), transparent 60%),
    var(--pp-surface);
  box-shadow: 0 8px 24px rgba(15,23,42,.08);
  color: var(--pp-text);
}

/* Force dark text and cancel theme "muted" styles */
.pp-audiences-light *{
  color: var(--pp-text) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

.pp-audiences-light .elementor-container{ gap: clamp(12px, 2.5vw, 24px); }

/* Heading + underline accent */
.pp-audiences-light .elementor-heading-title{
  margin: 0 0 8px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}
.pp-audiences-light .elementor-heading-title:after{
  content:"";
  display:block;
  width:64px;height:3px;margin-top:10px;border-radius:999px;
  background: linear-gradient(90deg,var(--pp-accent),var(--pp-accent2));
}

/* Lead paragraph (first text block) */
.pp-audiences-light .elementor-top-column:first-of-type
  .elementor-widget-text-editor .elementor-widget-container{
  font-size:1.05rem;
  opacity:.9 !important;
}

/* Audience list -> responsive grid of cards */
.pp-audiences-light ul{
  list-style:none;
  margin:0; padding:0;
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(200px,1fr));
  gap:12px;
}
.pp-audiences-light li{
  display:flex; align-items:center; gap:10px;
  padding:12px 14px;
  background: var(--pp-card);
  border:1px solid #e5e7eb;
  border-radius:12px;
  box-shadow: 0 6px 14px rgba(15,23,42,.06);
  font-weight:600;
}

/* Gradient check icon */
.pp-audiences-light li::before{
  content:"✓";
  display:inline-flex; align-items:center; justify-content:center;
  width:26px;height:26px;flex:0 0 26px;border-radius:999px;
  background: linear-gradient(135deg,var(--pp-accent),var(--pp-accent2));
  color:#fff;font-size:14px;font-weight:900;
  box-shadow: 0 2px 6px rgba(87,50,136,.15);
}

/* Tighten Elementor default margins */
.pp-audiences-light .elementor-widget-container{ margin:0; }

/* Mobile tweaks */
@media (max-width:767px){
  .pp-audiences-light{ padding:22px 16px; border-radius:12px; }
  .pp-audiences-light ul{ grid-template-columns: 1fr 1fr; gap:10px; }
  .pp-audiences-light li{ padding:10px 12px; font-size:15px; }
}
@media (max-width:420px){
  .pp-audiences-light ul{ grid-template-columns: 1fr; }
}/* End custom CSS */