/* Antonio Elementor structural bridge. CSS classes on CONTAINERS use css_classes, widgets use _css_classes. */
body.ai-site,body.elementor-editor-active {background:#0b0b0d;color:#f3eee8}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"],[data-elementor-type="section"]) .elementor-widget-heading :is(h1,h2,h3,h4,.elementor-heading-title){font-family:Georgia,serif;line-height:1.04;color:inherit;margin:0}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-text-editor{color:inherit}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-text-editor p{margin:0 0 1rem;color:inherit}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero {position:relative;min-height:78vh;display:flex;justify-content:flex-end;align-items:stretch;isolation:isolate;background-color:#0b0b0d;background-position:center;background-size:cover}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero .e-con.hero-inner{width:100%;max-width:1180px; margin:0 auto; padding:8rem clamp(1rem,4vw,2rem) 5rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.section{max-width:1180px;width:100%;margin:0 auto;padding:clamp(3.2rem,7vw,6.5rem) clamp(1rem,4vw,2rem);display:flex;flex-direction:column;gap:0}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.section.tight{padding-top:2.5rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.page-hero{max-width:1180px;width:100%;margin:0 auto;padding:5.5rem clamp(1rem,4vw,2rem) 3rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid{display:grid;gap:1.1rem;align-items:stretch;grid-auto-rows:auto}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.section-head{display:flex;flex-direction:row;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero-actions,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.tag-list{display:flex;flex-direction:row;gap:.8rem;flex-wrap:wrap;align-items:center}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:2rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.portrait-stack{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.case-list{display:grid;gap:1rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.newspaper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.gallery{display:block;columns:3 290px;column-gap:1rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.gallery > .e-con{break-inside:avoid;margin:0 0 1rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.card{overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.13);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.025));min-height:0;gap:0}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.card.pad{padding:1.35rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.card .e-con.copy{padding:1.15rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.card .elementor-widget-image img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.card.wide .elementor-widget-image img{aspect-ratio:16/10}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-button.button .elementor-button{border-radius:999px;background:#caa257;color:#15100a;font-weight:900;padding:.85rem 1.1rem;border:1px solid rgba(255,255,255,.06);box-shadow:0 8px 30px rgba(202,162,87,.18)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-button.button.secondary .elementor-button{background:rgba(255,255,255,.08);color:#f3eee8;border-color:rgba(255,255,255,.13)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-image img{display:block;max-width:100%}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.stat{padding:1.15rem;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:rgba(255,255,255,.045)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.case{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1.2rem;border-radius:20px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.13)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.location-band{width:100%;background:linear-gradient(135deg,rgba(138,31,31,.38),rgba(202,162,87,.12));border-block:1px solid rgba(255,255,255,.13)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.location-band>.e-con{max-width:1180px;width:100%;margin-inline:auto}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.disclaimer{max-width:1180px;width:calc(100% - 2rem);margin:0 auto 2rem;padding:1rem clamp(1rem,4vw,2rem);color:#d7cabe;background:rgba(138,31,31,.14);border:1px solid rgba(202,162,87,.22);border-radius:18px}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.quote{border-left:4px solid #caa257;padding-left:1.2rem;margin:2rem 0}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.gallery .elementor-widget-image img{width:100%;height:auto}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-heading.ai-src-h1 h1.elementor-heading-title{font-size:clamp(3.1rem,8vw,6.8rem);letter-spacing:-.06em}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-heading.ai-src-h2 h2.elementor-heading-title{font-size:clamp(2.1rem,4vw,4rem);letter-spacing:-.045em}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .elementor-widget-heading.ai-src-h3 h3.elementor-heading-title{font-size:clamp(1.35rem,2vw,2rem);letter-spacing:-.02em}
@media(max-width:860px){:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.split,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.two,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.three,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid.four,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.newspaper-grid{grid-template-columns:1fr}:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero{min-height:72vh}}
@media(max-width:520px){:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.stat-grid,:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.portrait-stack{grid-template-columns:1fr}}

/* Visual background layer does not obstruct Elementor handles. */
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.85),rgba(0,0,0,.52) 47%,rgba(0,0,0,.17));pointer-events:none;z-index:0}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero>.e-con{position:relative;z-index:1}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.portrait-stack>.elementor-widget-image img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:22px}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.gallery>.e-con{overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.04)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.gallery>.e-con>.elementor-widget-text-editor{padding:.75rem .9rem}
.elementor-edit-area {background:#0b0b0d;color:#f3eee8;}

/* Elementor Free header/footer template editing (no Elementor Pro required). */
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .e-con.ai-edit-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1.5rem;width:100%;padding:1rem clamp(1rem,4vw,3rem);background:#0b0b0d;}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .e-con.ai-brand{width:auto;flex:0 0 auto;gap:.2rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .e-con.ai-edit-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;width:auto;align-items:center}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-edit-nav .elementor-button{padding:.6rem .8rem;background:transparent;color:#f3eee8;font-weight:600;box-shadow:none;border:0;font-size:.83rem}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-edit-footer{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:2.5rem clamp(1rem,4vw,3rem);gap:2rem;background:#121214}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-footer-links{display:flex;flex-direction:row;gap:.7rem;flex-wrap:wrap}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-footer-links .elementor-button{background:transparent;color:#f3eee8;box-shadow:none}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-footer-heading .elementor-heading-title{font-family:Georgia,serif;color:#caa257}
/* Structural wrappers must follow the final native Elementor document tree. */
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero .e-con.hero-inner{position:relative;z-index:1}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.grid,
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.split,
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.stat-grid{height:auto;min-height:0;grid-auto-rows:minmax(0,auto)}
:is(.ai-site,.elementor-edit-area,[data-elementor-type="wp-page"]) .e-con.hero-actions .elementor-widget-button{width:auto;max-width:100%}
@media(max-width:860px){:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .e-con.ai-edit-header,:is(.ai-site,.elementor-edit-area,[data-elementor-type="section"]) .ai-edit-footer{flex-direction:column;align-items:flex-start}}
