/* Grow with AI Elementor widgets */
.gwai-el-section,
.gwai-el-hero,
.gwai-el-form{position:relative;width:100%;box-sizing:border-box}
.gwai-el-container{width:100%;margin:0 auto;box-sizing:border-box}
.gwai-el-intro-wrap{max-width:760px;margin:0 0 34px}
.gwai-el-eyebrow{margin:0 0 12px;font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.gwai-el-heading{margin:0;font-size:clamp(2rem,4.2vw,3.7rem);line-height:1.05;letter-spacing:-.04em}
.gwai-el-intro{margin:18px 0 0;font-size:1.05rem;line-height:1.75}

/* Hero */
.gwai-el-hero{position:relative;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:#043d27 radial-gradient(circle at 86% 12%,rgba(55,212,74,.25),transparent 31%)}
.gwai-el-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.gwai-el-hero::after{content:"";position:absolute;z-index:0;right:-14%;bottom:-36%;width:620px;height:620px;border:1px solid rgba(255,255,255,.11);border-radius:50%;box-shadow:0 0 0 90px rgba(255,255,255,.024),0 0 0 180px rgba(255,255,255,.016);pointer-events:none}
.gwai-el-hero__inner{position:relative;z-index:1;width:min(1220px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(350px,.82fr);align-items:center}
.gwai-el-hero--text-only .gwai-el-hero__inner{grid-template-columns:minmax(0,850px)}
.gwai-el-hero__content{max-width:760px}
.gwai-el-hero__kicker{font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px}
.gwai-el-hero__title{font-size:clamp(3rem,6.2vw,5.8rem);line-height:.92;letter-spacing:-.06em;margin:0;max-width:820px;text-wrap:balance}
.gwai-el-hero__tagline{max-width:690px;margin:24px 0 0;font-size:clamp(1.05rem,1.8vw,1.42rem);line-height:1.52}
.gwai-el-hero__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:30px}
.gwai-el-hero__meta>div{padding:14px 0;border-top:1px solid rgba(255,255,255,.24)}
.gwai-el-hero__meta b{display:block;margin-bottom:6px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
.gwai-el-hero__meta span{display:block;font-weight:700;line-height:1.35}
.gwai-el-hero__buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.gwai-el-btn,.gwai-el-content__button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;text-decoration:none;font-weight:800;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.gwai-el-btn:hover,.gwai-el-content__button:hover{transform:translateY(-2px)}
.gwai-el-btn--secondary{background:transparent;border:1px solid}
.gwai-el-hero__visual{position:relative;width:100%;justify-self:end}
.gwai-el-hero__image{position:relative;overflow:hidden;margin:0;background:linear-gradient(145deg,#075c35,#032b1b);border:1px solid rgba(255,255,255,.16);box-shadow:0 34px 90px rgba(0,0,0,.26)}
.gwai-el-hero__image::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none}
.gwai-el-hero__image::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,rgba(4,61,39,.34) 0%,transparent 23%,transparent 78%,rgba(4,61,39,.08) 100%),linear-gradient(0deg,rgba(4,61,39,.2),transparent 24%)}
.gwai-el-hero__image img{display:block;width:100%;height:auto;min-height:420px;aspect-ratio:1485/1536;object-fit:cover;object-position:center center}
.gwai-el-hero__countdown{position:relative;z-index:4;width:calc(100% - 42px);margin:22px auto 0;background:rgba(255,255,255,.96);color:#101827;padding:22px;border-radius:22px;box-shadow:0 22px 60px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.gwai-el-hero__countdown--overlap{margin-top:-42px}
.gwai-el-hero__countdown>span{display:block;margin-bottom:13px;color:#075c35;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.gwai-el-hero__countdown .gwai-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.gwai-el-hero__countdown .gwai-countdown__item{background:#f4f6f3;border-radius:12px;padding:12px 6px;text-align:center}
.gwai-el-hero__countdown .gwai-countdown__item strong{display:block;font-size:1.35rem;color:#075c35}
.gwai-el-hero__countdown .gwai-countdown__item span{font-size:.6rem;text-transform:uppercase;letter-spacing:.06em;color:#66707d}
.gwai-el-hero__countdown>a{display:inline-block;margin-top:13px;color:#075c35;font-size:.86rem;font-weight:800;text-decoration:none}


/* Internal page hero */
.gwai-el-page-hero{position:relative;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:linear-gradient(128deg,#052d5e 0%,#064b86 58%,#073a68 100%);color:#fff}
.gwai-el-page-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none}
.gwai-el-page-hero::after{content:"";position:absolute;z-index:0;width:560px;height:560px;right:-180px;top:-260px;border:1px solid rgba(55,212,74,.34);border-radius:50%;box-shadow:0 0 0 74px rgba(55,212,74,.045),0 0 0 148px rgba(255,255,255,.018);pointer-events:none}
.gwai-el-page-hero__mesh{position:absolute;inset:0;z-index:0;opacity:.15;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.72) 1px,transparent 0);background-size:34px 34px;mask-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.34) 62%,transparent 100%)}
.gwai-el-page-hero__inner{position:relative;z-index:1;width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr);gap:48px;align-items:center}
.gwai-el-page-hero--has-image .gwai-el-page-hero__inner{grid-template-columns:minmax(0,1.1fr) minmax(280px,.72fr)}
.gwai-el-page-hero__content{max-width:860px}
.gwai-el-page-hero__eyebrow{margin:0 0 16px;font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.gwai-el-page-hero__title{margin:0;max-width:920px;font-size:clamp(2.65rem,5.5vw,5.35rem);line-height:.98;letter-spacing:-.055em;text-wrap:balance}
.gwai-el-page-hero__description{max-width:760px;margin-top:22px;font-size:clamp(1rem,1.6vw,1.22rem);line-height:1.7}
.gwai-el-page-hero__description>*:first-child{margin-top:0}.gwai-el-page-hero__description>*:last-child{margin-bottom:0}
.gwai-el-page-hero__meta{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:28px}
.gwai-el-page-hero__meta span{display:flex;flex-direction:column;gap:4px;min-width:180px;padding-top:12px;border-top:1px solid rgba(255,255,255,.22);font-weight:700}
.gwai-el-page-hero__meta b{font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}
.gwai-el-page-hero__buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.gwai-el-page-hero__button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:12px;text-decoration:none;font-weight:850;transition:transform .2s ease,box-shadow .2s ease}
.gwai-el-page-hero__button:hover{transform:translateY(-2px)}
.gwai-el-page-hero__button--primary{box-shadow:0 14px 34px rgba(0,0,0,.16)}
.gwai-el-page-hero__button--secondary{border:1px solid;background:rgba(255,255,255,.04)}
.gwai-el-page-hero__image{position:relative;margin:0;overflow:hidden;background:#063b6d;border:1px solid rgba(255,255,255,.17);box-shadow:0 28px 74px rgba(0,0,0,.24)}
.gwai-el-page-hero__image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

@media (max-width:900px){
 .gwai-el-page-hero--has-image .gwai-el-page-hero__inner{grid-template-columns:1fr}
 .gwai-el-page-hero__image{max-width:620px}
}
@media (max-width:640px){
 .gwai-el-page-hero__title{font-size:clamp(2.25rem,11vw,3.35rem);line-height:1.02}
 .gwai-el-page-hero__description{margin-top:18px;font-size:1rem}
 .gwai-el-page-hero__meta{display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .gwai-el-page-hero__meta span{min-width:0}
 .gwai-el-page-hero__buttons{flex-direction:column;align-items:stretch}
 .gwai-el-page-hero__button{width:100%}
}


/* Generic content */
.gwai-el-content__inner{display:grid;align-items:center;gap:52px}
.gwai-el-content--wide .gwai-el-content__inner{grid-template-columns:1fr}
.gwai-el-content--image-right .gwai-el-content__inner,.gwai-el-content--image-left .gwai-el-content__inner{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)}
.gwai-el-content--image-left .gwai-el-content__copy{order:2}
.gwai-el-content__body{margin-top:20px;font-size:1.05rem;line-height:1.8}
.gwai-el-content__body>*:first-child{margin-top:0}
.gwai-el-content__body>*:last-child{margin-bottom:0}
.gwai-el-content__button{margin-top:24px;border-radius:12px}
.gwai-el-content__image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

/* Pillars */
.gwai-el-pillars__grid{display:grid}
.gwai-el-pillar{border:1px solid rgba(16,24,39,.08);transition:transform .2s ease,box-shadow .2s ease}
.gwai-el-pillar:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(16,24,39,.08)}
.gwai-el-pillar__number{font-size:.82rem;font-weight:900;letter-spacing:.12em;margin-bottom:28px}
.gwai-el-pillar h3{font-size:1.45rem;margin:0 0 9px}
.gwai-el-pillar p{margin:0;line-height:1.6}

/* Dynamic grids */
.gwai-el-dynamic-grid>.gwai-organiser-grid,
.gwai-el-dynamic-grid>.gwai-team-grid,
.gwai-el-dynamic-grid>.gwai-logo-grid,
.gwai-el-dynamic-grid>.gwai-card-grid,
.gwai-el-dynamic-grid>.gwai-post-grid{display:grid!important}
.gwai-el-dynamic-grid .gwai-organiser-card,
.gwai-el-dynamic-grid .gwai-team-card,
.gwai-el-dynamic-grid .gwai-partner-card,
.gwai-el-dynamic-grid .gwai-speaker-card,
.gwai-el-dynamic-grid .gwai-post-card{height:100%;box-sizing:border-box}
.gwai-el-dynamic-grid .gwai-partner-card{display:flex;min-height:180px;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:26px;border:1px solid rgba(16,24,39,.08)}
.gwai-el-dynamic-grid .gwai-partner-card__logo{display:flex;align-items:center;justify-content:center;min-height:90px;width:100%}
.gwai-el-dynamic-grid .gwai-partner-card__logo img{display:block;max-width:100%;height:auto}
.gwai-el-dynamic-grid .gwai-partner-card__tier{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#075c35}

/* Programme */
.gwai-el-programme--cards .gwai-schedule{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.gwai-el-programme--cards .gwai-session-card{display:block;padding:28px}
.gwai-el-programme--cards .gwai-session-time{margin-bottom:18px}
.gwai-el-programme--cards .gwai-session-venue{margin-top:18px}
.gwai-el-programme .gwai-session-card{border:1px solid rgba(16,24,39,.09);box-shadow:0 8px 28px rgba(16,24,39,.04)}

/* Form */
.gwai-el-form .gwai-el-container{max-width:1180px;margin:0 auto}
.gwai-el-form .gwai-form-shell{background:#fff}

/* Elementor editing refinements */
.elementor-editor-active .gwai-el-section,.elementor-editor-active .gwai-el-hero,.elementor-editor-active .gwai-el-page-hero,.elementor-editor-active .gwai-el-form{min-height:80px}
.elementor-editor-active .gwai-el-section:hover,.elementor-editor-active .gwai-el-hero:hover,.elementor-editor-active .gwai-el-page-hero:hover{outline:1px dashed rgba(7,92,53,.35);outline-offset:-1px}

@media (max-width:900px){
 .gwai-el-content--image-right .gwai-el-content__inner,.gwai-el-content--image-left .gwai-el-content__inner{grid-template-columns:1fr}
 .gwai-el-content--image-left .gwai-el-content__copy{order:initial}
 .gwai-el-programme--cards .gwai-schedule{grid-template-columns:1fr}
}
@media (max-width:640px){
 .gwai-el-heading{font-size:clamp(1.8rem,9vw,2.65rem)}
 .gwai-el-intro-wrap{margin-bottom:26px}
}

/* FAQ */
.gwai-el-faq__items{display:grid}
.gwai-el-faq details{border:1px solid #dfe5e1;overflow:hidden}
.gwai-el-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:22px 24px;font-weight:800;font-size:1.05rem}
.gwai-el-faq summary::-webkit-details-marker{display:none}
.gwai-el-faq summary span{font-size:1.45rem;line-height:1;transition:transform .2s ease}
.gwai-el-faq details[open] summary span{transform:rotate(45deg)}
.gwai-el-faq details>div{padding:0 24px 22px;line-height:1.75}
.gwai-el-faq details>div>*:first-child{margin-top:0}
.gwai-el-faq details>div>*:last-child{margin-bottom:0}

/* Venue */
.gwai-el-venue__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr);gap:34px;align-items:start}
.gwai-el-venue .gwai-contact-cards{display:grid;gap:14px}
.gwai-el-venue .gwai-contact-cards article{padding:20px;border:1px solid rgba(16,24,39,.08)}
.gwai-el-venue .gwai-contact-cards small{display:block;margin-bottom:6px;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#66707d}
.gwai-el-venue .gwai-contact-cards strong{display:block;font-size:1.05rem;color:#101827}
.gwai-el-venue__note{margin-top:22px;line-height:1.75}
.gwai-el-venue__map{overflow:hidden;background:#eaf0ec;min-height:320px}
.gwai-el-venue__map iframe{display:block;width:100%;border:0}
.gwai-el-venue__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px;background:#eaf0ec;color:#075c35}
.gwai-el-venue__placeholder span{display:block;width:44px;height:44px;margin-bottom:12px}
.gwai-el-venue__placeholder svg{width:100%;height:100%}
.gwai-el-venue__placeholder h3{margin:0 0 8px;color:#101827}
.gwai-el-venue__placeholder p{margin:0;max-width:360px}

/* Contact */
.gwai-el-contact__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:28px;align-items:start}
.gwai-el-contact .gwai-contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gwai-el-contact .gwai-contact-cards article,.gwai-el-contact__guide{padding:24px;border:1px solid rgba(16,24,39,.08)}
.gwai-el-contact .gwai-contact-cards small{display:block;margin-bottom:8px;font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#66707d}
.gwai-el-contact .gwai-contact-cards a{font-weight:800;text-decoration:none;overflow-wrap:anywhere}
.gwai-el-contact__guide h3{margin-top:0;color:#101827}
.gwai-el-contact__guide ul{padding-left:1.2em;line-height:1.75}
.gwai-el-contact__guide .gwai-button{margin-top:14px}

/* Flyer widget */
.gwai-el-flyer .gwai-flyer-maker{max-width:1180px;margin:0 auto}

@media (max-width:900px){
 .gwai-el-venue__grid,.gwai-el-contact__grid{grid-template-columns:1fr}
}
@media (max-width:640px){
 .gwai-el-contact .gwai-contact-cards{grid-template-columns:1fr}
 .gwai-el-faq summary{padding:18px;font-size:1rem}
 .gwai-el-faq details>div{padding:0 18px 18px}
}

/* Elementor site parts */
.gwai-elementor-site-part>.elementor{margin:0}
.gwai-elementor-site-part .elementor-element{--widgets-spacing:0px}
.gwai-el-site-header,.gwai-elementor-site-footer{position:relative;z-index:1}
.gwai-site-header--static{position:relative!important;top:auto!important}
.gwai-elementor-logo-link{display:inline-flex;align-items:center;text-decoration:none}
.gwai-elementor-logo-link .custom-logo-link{display:inline-flex;align-items:center}
.gwai-elementor-logo-link img,.gwai-brand .custom-logo{display:block;width:auto}
.gwai-elementor-site-footer .gwai-footer-top{grid-template-columns:minmax(0,1.2fr) minmax(170px,.65fr) minmax(230px,.75fr)}
.elementor-editor-active .gwai-elementor-site-header,.elementor-editor-active .gwai-elementor-site-footer{outline:1px dashed rgba(7,92,53,.35);outline-offset:-1px}

@media (max-width:900px){
 .gwai-el-hero__inner{grid-template-columns:1fr;gap:42px}
 .gwai-el-hero__content{max-width:none}
 .gwai-el-hero__title{font-size:clamp(2.75rem,10vw,4.8rem)}
 .gwai-el-hero__visual{justify-self:center;max-width:620px!important}
 .gwai-el-hero__countdown{max-width:560px}
 .gwai-elementor-site-footer .gwai-footer-top{grid-template-columns:1fr 1fr}
 .gwai-elementor-site-footer .gwai-footer-brand{grid-column:1/-1}
}
@media (max-width:640px){
 .gwai-el-hero__title{font-size:clamp(2.45rem,13vw,3.75rem);line-height:.96}
 .gwai-el-hero__tagline{margin-top:18px;font-size:1.02rem}
 .gwai-el-hero__meta{grid-template-columns:1fr 1fr;gap:0 14px;margin-top:24px}
 .gwai-el-hero__meta>div:last-child{grid-column:1/-1}
 .gwai-el-hero__buttons{flex-direction:column;align-items:stretch}
 .gwai-el-btn{width:100%}
 .gwai-el-hero__image::after{background:linear-gradient(0deg,rgba(4,61,39,.22),transparent 25%)}
 .gwai-el-hero__image img{min-height:0;aspect-ratio:auto}
 .gwai-el-hero__countdown{width:calc(100% - 20px);padding:17px;border-radius:17px}
 .gwai-el-hero__countdown--overlap{margin-top:-22px}
 .gwai-el-hero__countdown .gwai-countdown{grid-template-columns:repeat(2,minmax(0,1fr))}
 .gwai-el-hero__countdown .gwai-countdown__item strong{font-size:1.2rem}
 .gwai-elementor-site-footer .gwai-footer-top{grid-template-columns:1fr}
 .gwai-elementor-site-footer .gwai-footer-brand{grid-column:auto}
}
