.aest-root{--aest-wine:#61182f;--aest-wine-dark:#2a111a;--aest-gold:#e0b35a;--aest-cream:#fff7e9;--aest-paper:#f8f1e8;--aest-ink:#22171b;--aest-muted:#74666b;--aest-line:rgba(86,45,57,.16);color:var(--aest-ink)}
.aest-root *{box-sizing:border-box}
.aest-root [hidden]{display:none!important}
.aest-hero{position:relative;overflow:hidden;display:grid;min-height:520px;align-items:end;padding:180px 0 88px;color:var(--aest-cream);background:radial-gradient(circle at 78% 25%,rgba(224,179,90,.24),transparent 28%),radial-gradient(circle at 18% 90%,rgba(149,44,80,.4),transparent 34%),linear-gradient(135deg,#180b10,#4a1427 60%,#1a0b11)}
.aest-hero:before,.aest-hero:after{position:absolute;border:1px solid rgba(255,247,233,.13);border-radius:50%;content:"";pointer-events:none}
.aest-hero:before{right:-6vw;top:80px;width:42vw;height:42vw;min-width:420px;min-height:420px}
.aest-hero:after{right:8vw;top:180px;width:22vw;height:22vw;min-width:220px;min-height:220px}
.aest-hero-inner{position:relative;z-index:1;max-width:920px!important;margin-left:max(0px,calc((100vw - 1220px)/2))!important}
.aest-hero h1{max-width:900px;margin:12px 0 20px;font:500 clamp(3.2rem,7vw,6.8rem)/.94 var(--font-display,"Playfair Display",serif);letter-spacing:-.045em}
.aest-hero p:not(.eyebrow){max-width:670px;margin:0;color:rgba(255,247,233,.78);font-size:clamp(1rem,1.5vw,1.23rem)}
.aest-section{background:linear-gradient(180deg,#fbf6ef,var(--aest-paper))}
.aest-layout{display:grid;grid-template-columns:minmax(0,1fr) 365px;align-items:start;gap:34px}
.aest-builder{display:grid;gap:24px}
.aest-intro-card{display:flex;align-items:flex-start;gap:18px;padding:6px 2px}
.aest-intro-card h2{margin:0 0 5px;font:600 clamp(1.8rem,3vw,2.7rem)/1.05 var(--font-display,"Playfair Display",serif)}
.aest-intro-card p{margin:0;color:var(--aest-muted)}
.aest-step{display:grid;flex:0 0 42px;height:42px;place-items:center;border:1px solid rgba(97,24,47,.24);border-radius:50%;color:var(--aest-wine);font-size:.74rem;font-weight:900;letter-spacing:.08em}
.aest-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.aest-service-card{position:relative;display:grid;grid-template-columns:1fr auto;align-content:start;gap:8px 15px;min-height:190px;padding:24px;border:1px solid var(--aest-line);border-radius:20px;background:rgba(255,255,255,.8);box-shadow:0 18px 45px rgba(58,30,39,.06);cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.aest-service-card:hover{transform:translateY(-3px);border-color:rgba(97,24,47,.35);box-shadow:0 22px 52px rgba(58,30,39,.1)}
.aest-service-card:has(input:checked){color:#fff;border-color:var(--aest-wine);background:linear-gradient(145deg,var(--aest-wine),#35121f);box-shadow:0 24px 60px rgba(74,20,39,.22)}
.aest-service-card input{position:absolute;width:1px;height:1px;opacity:0}
.aest-service-card strong{grid-column:1;grid-row:1;align-self:center;font:600 1.45rem/1.1 var(--font-display,"Playfair Display",serif)}
.aest-service-card small{grid-column:1/-1;color:var(--aest-muted);font-size:.82rem;line-height:1.55}
.aest-service-card:has(input:checked) small{color:rgba(255,255,255,.7)}
.aest-service-card em{grid-column:1/-1;align-self:end;color:var(--aest-wine);font-size:.76rem;font-style:normal;font-weight:850;letter-spacing:.02em}
.aest-service-card:has(input:checked) em{color:var(--aest-gold)}
.aest-service-check{grid-column:2;grid-row:1;display:grid;width:29px;height:29px;place-items:center;border:1px solid rgba(97,24,47,.22);border-radius:50%;color:transparent;font-weight:900}
.aest-service-card:has(input:checked) .aest-service-check{color:var(--aest-wine-dark);border-color:var(--aest-gold);background:var(--aest-gold)}
.aest-customize-heading{margin-top:25px}
.aest-panels{display:grid;gap:18px}
.aest-service-panel{min-width:0;margin:0;padding:26px;border:1px solid var(--aest-line);border-radius:22px;background:#fff;box-shadow:0 18px 50px rgba(58,30,39,.06)}
.aest-service-panel legend{padding:0 10px;color:var(--aest-wine);font:650 1.7rem var(--font-display,"Playfair Display",serif)}
.aest-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.aest-question{display:grid;gap:8px;color:#5c4d52;font-size:.75rem;font-weight:800}
.aest-question select,.aest-question input,.aest-event-details input{width:100%;height:50px;padding:0 14px;border:1px solid #ddd0c8;border-radius:12px;background:#fff;color:var(--aest-ink);font:600 .91rem var(--font-body,"DM Sans",sans-serif);outline:none}
.aest-question select:focus,.aest-question input:focus,.aest-event-details input:focus{border-color:var(--aest-wine);box-shadow:0 0 0 3px rgba(97,24,47,.1)}
.aest-number-wrap{position:relative}.aest-number-wrap input{padding-right:80px}.aest-number-wrap em{position:absolute;right:14px;top:50%;color:var(--aest-muted);font-size:.72rem;font-style:normal;transform:translateY(-50%)}
.aest-event-details{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px;border-radius:20px;color:#fff;background:linear-gradient(145deg,#2b141d,#160b10)}
.aest-event-details h3{grid-column:1/-1;margin:0 0 5px;font:600 1.35rem var(--font-display,"Playfair Display",serif)}
.aest-event-details label{display:grid;gap:7px;color:rgba(255,255,255,.72);font-size:.74rem;font-weight:800}.aest-event-details input{border-color:rgba(255,255,255,.15);color:#fff;background:rgba(255,255,255,.08);color-scheme:dark}
.aest-summary{position:sticky;top:112px;overflow:hidden;padding:28px;border:1px solid rgba(255,255,255,.12);border-radius:24px;color:#fff;background:radial-gradient(circle at 90% 0,rgba(224,179,90,.2),transparent 28%),linear-gradient(155deg,#35131f,#150a0e 70%);box-shadow:0 30px 80px rgba(47,20,29,.24)}
.aest-summary>.eyebrow{color:var(--aest-gold)}
.aest-empty-summary{display:grid;place-items:center;min-height:285px;text-align:center}.aest-empty-summary>span{display:grid;width:62px;height:62px;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:var(--aest-gold);font-size:1.7rem}.aest-empty-summary p{max-width:230px;color:rgba(255,255,255,.65);font-size:.9rem}
.aest-result-services{display:grid;gap:0;margin:22px 0 18px;padding:0;list-style:none}.aest-result-services li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:.83rem}.aest-result-services li>span{display:grid}.aest-result-services small{color:rgba(255,255,255,.48);font-size:.61rem}.aest-result-services strong{color:var(--aest-gold)}
.aest-total{padding:18px 0;border-bottom:1px solid rgba(255,255,255,.12)}.aest-total>span{display:block;color:rgba(255,255,255,.65);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.aest-total strong{display:flex;align-items:center;gap:8px;margin-top:6px;color:var(--aest-cream);font:600 clamp(1.9rem,3vw,2.55rem)/1 var(--font-display,"Playfair Display",serif)}.aest-total i{color:var(--aest-gold);font-style:normal}
.aest-tax-note,.aest-travel-note,.aest-disclaimer{color:rgba(255,255,255,.62);font-size:.7rem;line-height:1.5}.aest-travel-note b{color:#fff}.aest-disclaimer{padding-left:11px;border-left:2px solid var(--aest-gold)}
.aest-contact{width:100%;margin-top:10px;text-align:center}.aest-reset{display:block;margin:15px auto 0;padding:4px;border:0;color:rgba(255,255,255,.6);background:none;font:700 .72rem var(--font-body,"DM Sans",sans-serif);text-decoration:underline;cursor:pointer}.aest-reset:hover{color:#fff}
.aest-root[data-vat-included="1"] .aest-vat-extra,.aest-root[data-vat-included="0"] .aest-vat-included{display:none!important}
@media(max-width:1050px){.aest-layout{grid-template-columns:1fr}.aest-summary{position:relative;top:auto}.aest-result-services{grid-template-columns:repeat(2,1fr);column-gap:20px}.aest-total strong{font-size:2.4rem}}
@media(max-width:680px){.aest-hero{min-height:470px;padding:150px 0 70px}.aest-service-grid,.aest-question-grid,.aest-event-details{grid-template-columns:1fr}.aest-service-card{min-height:165px;padding:20px}.aest-service-panel{padding:20px 16px}.aest-event-details h3{grid-column:auto}.aest-summary{padding:23px 20px}.aest-result-services{grid-template-columns:1fr}.aest-total strong{font-size:clamp(1.75rem,9vw,2.35rem)}}
@media(prefers-reduced-motion:reduce){.aest-service-card{transition:none}}
