/* Amani — aqiqah flagship. Trusted template stylesheet.
   The room this invitation imagines is a quiet one at first light: an arch, a
   name, and the people thanking God for it. Nothing here shouts, and nothing
   competes with the baby's name. */

.uk-amani{
  --aq-ivory:#FBF7F0;
  --aq-ivory2:#F2EBDF;
  --aq-sage:#8A9A7B;
  --aq-sage-dp:#5F7052;
  --aq-gold:#C4A265;
  --aq-gold-dp:#96783F;
  --aq-ink:#2A2B26;
  --aq-dark:#171B1A;
  --aq-muted:rgba(42,43,38,.66);
  --aq-line:rgba(138,154,123,.34);
  --aq-hairline:rgba(42,43,38,.12);
  --aq-arch:28px;
  --aq-radius:18px;
  --aq-radius-control:999px;
  --aq-ease:cubic-bezier(.22,.7,.28,1);
  --aq-reveal:.8s;
  --aq-rise:18px;
  --aq-col:min(100% - 36px, 560px);
  min-height:100vh;
  overflow:clip;
  background:var(--aq-ivory);
  color:var(--aq-ink);
  font-family:"DM Sans",system-ui,sans-serif;
  font-size:15px;
  line-height:1.8;
}
.uk-amani *,.uk-amani *:before,.uk-amani *:after{box-sizing:border-box}
/* Controls are toggled through the hidden attribute and carry their own display
   rules, so the user-agent rule has to be reinforced here. */
.uk-amani [hidden]{display:none !important}
.uk-amani .bdu-icon{display:inline-block;flex:0 0 auto;vertical-align:middle}
.uk-amani h1,.uk-amani h2,.uk-amani h3,.uk-amani h4{
  font-family:"Playfair Display",Georgia,serif;font-weight:500;line-height:1.2;overflow-wrap:anywhere;
}
.uk-amani p,.uk-amani strong,.uk-amani span,.uk-amani li,.uk-amani cite{overflow-wrap:anywhere}
.uk-aq-preline{white-space:pre-line}

/* Palettes ---------------------------------------------------------------- */
.uk-amani.uk-design-palette-warm{--aq-ivory:#FCF4E8;--aq-ivory2:#F5E9D6;--aq-sage:#B98A4B;--aq-sage-dp:#8A6431;--aq-gold:#E0C48C;--aq-gold-dp:#A8823F;--aq-line:rgba(185,138,75,.34)}
.uk-amani.uk-design-palette-romantic{--aq-ivory:#FCF4F3;--aq-ivory2:#F6E4E0;--aq-sage:#C98A8A;--aq-sage-dp:#96595C;--aq-gold:#EBC6BE;--aq-gold-dp:#B07C70;--aq-line:rgba(201,138,138,.34)}
.uk-amani.uk-design-palette-sage{--aq-ivory:#F4F8F2;--aq-ivory2:#E6EFE1;--aq-sage:#6F8F6A;--aq-sage-dp:#4E6A4A;--aq-gold:#BFD4B0;--aq-gold-dp:#7E9A6C;--aq-line:rgba(111,143,106,.36)}
.uk-amani.uk-design-palette-midnight{--aq-ivory:#171B1A;--aq-ivory2:#202724;--aq-sage:#9FB295;--aq-sage-dp:#C3D3B8;--aq-gold:#D9BC80;--aq-gold-dp:#EBD5A6;--aq-ink:#F3F0E8;--aq-muted:rgba(243,240,232,.7);--aq-line:rgba(159,178,149,.4);--aq-hairline:rgba(243,240,232,.16);--aq-dark:#0E1211}

/* Typography variants ----------------------------------------------------- */
.uk-amani.uk-design-type-classic h1,
.uk-amani.uk-design-type-classic h2,
.uk-amani.uk-design-type-classic h3{letter-spacing:.02em}
.uk-amani.uk-design-type-editorial h1,
.uk-amani.uk-design-type-editorial h2,
.uk-amani.uk-design-type-editorial h3{font-style:italic;letter-spacing:-.01em}
.uk-amani.uk-design-type-modern h1,
.uk-amani.uk-design-type-modern h2,
.uk-amani.uk-design-type-modern h3,
.uk-amani.uk-design-type-modern h4{font-family:"DM Sans",system-ui,sans-serif;font-weight:600;letter-spacing:-.03em}

/* Surface variants. The arch is the template's shape, so the control moves how
   far the arch is drawn rather than only rounding corners. */
.uk-amani.uk-design-surface-soft{--aq-arch:44px;--aq-radius:26px;--aq-radius-control:999px}
.uk-amani.uk-design-surface-balanced{--aq-arch:18px;--aq-radius:12px;--aq-radius-control:12px}
.uk-amani.uk-design-surface-sharp{--aq-arch:0px;--aq-radius:0px;--aq-radius-control:0px}

/* Motion variants --------------------------------------------------------- */
.uk-amani.uk-design-motion-soft{--aq-reveal:1.05s;--aq-rise:10px}
.uk-amani.uk-design-motion-cinematic{--aq-reveal:.9s;--aq-rise:34px}
.uk-amani.uk-design-motion-minimal{--aq-reveal:0s;--aq-rise:0px}

/* Primitives -------------------------------------------------------------- */
.uk-aq-eyebrow{
  margin:0;color:var(--aq-sage-dp);font-size:10px;font-weight:700;line-height:1.7;
  letter-spacing:.28em;text-transform:uppercase;
}
.uk-aq-copy{margin:14px auto 0;max-width:54ch;color:var(--aq-muted);font-size:14px;line-height:1.9}
.uk-aq-lead{margin:14px 0 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.25rem,5.6vw,1.7rem)}

.uk-aq-crescent{
  display:inline-grid;place-items:center;width:58px;height:58px;
  border:1px solid var(--aq-gold);border-radius:50%;
  color:var(--aq-gold-dp);font-family:"Playfair Display",Georgia,serif;font-size:16px;letter-spacing:.12em;
}
.uk-aq-crescent.is-large{width:82px;height:82px;font-size:20px}

.uk-aq-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 20px;cursor:pointer;text-decoration:none;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius-control);
  background:transparent;color:var(--aq-sage-dp);
  font-family:inherit;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  transition:background .25s var(--aq-ease),border-color .25s var(--aq-ease),color .25s var(--aq-ease);
}
.uk-aq-button:hover{border-color:var(--aq-sage);background:rgba(138,154,123,.12)}
.uk-aq-button.is-solid{border-color:var(--aq-sage);background:var(--aq-sage);color:var(--aq-ivory)}
.uk-aq-button.is-solid:hover{background:var(--aq-sage-dp)}
.uk-amani :is(a,button,summary,input,select,textarea):focus-visible{outline:2px solid var(--aq-sage-dp);outline-offset:3px}

.uk-aq-progress{position:fixed;left:0;top:0;z-index:1100;width:100%;height:2px;pointer-events:none}
.uk-aq-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--aq-sage),var(--aq-gold));transition:width .1s linear}

.uk-aq-toast{
  position:fixed;left:50%;bottom:96px;z-index:1250;transform:translate(-50%,10px);
  opacity:0;pointer-events:none;max-width:min(88vw,340px);
  padding:10px 18px;border-radius:var(--aq-radius-control);background:var(--aq-dark);color:var(--aq-ivory);
  font-size:12px;font-weight:600;text-align:center;
  box-shadow:0 14px 40px rgba(23,27,26,.32);transition:opacity .22s var(--aq-ease),transform .22s var(--aq-ease);
}
.uk-aq-toast.is-show{opacity:1;transform:translate(-50%,0)}

.uk-aq-feedback{
  position:fixed;left:50%;top:64px;z-index:1200;transform:translateX(-50%);
  display:flex;align-items:center;gap:8px;width:min(92vw,520px);
  padding:11px 16px;border:1px solid var(--aq-line);border-radius:var(--aq-radius);
  background:var(--aq-ivory);color:var(--aq-ink);font-size:13px;box-shadow:0 12px 34px rgba(23,27,26,.14);
}

/* Reveal: everything rises a little, the way light arrives. */
.uk-aq-reveal,.uk-aq-reveal-item{
  opacity:0;transform:translate3d(0,var(--aq-rise),0);
  transition:opacity var(--aq-reveal) var(--aq-ease),transform var(--aq-reveal) var(--aq-ease);
}
.uk-aq-reveal.is-visible,.uk-aq-reveal.is-visible .uk-aq-reveal-item,.uk-aq-reveal-item.is-visible{opacity:1;transform:none}
.uk-aq-reveal.is-visible .uk-aq-reveal-item:nth-child(2){transition-delay:.08s}
.uk-aq-reveal.is-visible .uk-aq-reveal-item:nth-child(3){transition-delay:.16s}
.uk-aq-reveal.is-visible .uk-aq-reveal-item:nth-child(4){transition-delay:.24s}

/* Opening gate: an arch cut out of the photograph. */
.uk-aq-gate{
  position:fixed;inset:0;z-index:900;display:flex;flex-direction:column;
  align-items:center;justify-content:flex-end;padding:26px 22px calc(38px + env(safe-area-inset-bottom));
  background:var(--aq-dark);text-align:center;
  transition:opacity .55s var(--aq-ease),visibility .55s;
}
.uk-aq-gate.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.uk-aq-gate-media{position:absolute;inset:0;overflow:hidden}
.uk-aq-gate-media img{width:100%;height:100%;object-fit:cover;object-position:var(--aq-focus-mobile-x,50%) var(--aq-focus-mobile-y,38%)}
.uk-aq-gate-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,27,26,.32),rgba(23,27,26,.7) 54%,rgba(23,27,26,.94))}
.uk-aq-gate-body{position:relative;z-index:2;width:min(100%,430px)}
.uk-aq-gate-body h1{margin:14px 0 0;color:var(--aq-ivory);font-size:clamp(1.9rem,9vw,2.8rem)}
.uk-aq-gate-body .uk-aq-eyebrow{margin-top:16px;color:var(--aq-gold)}
.uk-aq-gate-body .uk-aq-crescent{border-color:var(--aq-gold);color:var(--aq-gold)}
.uk-aq-gate-date{margin:12px 0 0;color:rgba(251,247,240,.74);font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.uk-aq-gate-body .uk-aq-button{margin-top:22px;border-color:var(--aq-gold);color:var(--aq-gold)}
.uk-aq-gate-body .uk-aq-guest strong{color:var(--aq-ivory)}

.uk-aq-guest{margin:18px auto 0;max-width:330px;padding:12px 16px;border:1px solid var(--aq-line);border-radius:var(--aq-radius)}
.uk-aq-guest span{display:block;color:var(--aq-muted);font-size:9px;letter-spacing:.24em;text-transform:uppercase}
.uk-aq-guest strong{display:block;margin-top:4px;font-family:"Playfair Display",Georgia,serif;font-size:18px;font-weight:500;line-height:1.35}

.uk-aq-group-list{display:grid;gap:10px;margin:16px 0 0}
.uk-aq-group-list span{display:grid;gap:2px}
.uk-aq-group-list small{color:var(--aq-muted);font-size:9px;letter-spacing:.22em;text-transform:uppercase}
.uk-aq-group-list strong{font-family:"Playfair Display",Georgia,serif;font-size:16px;font-weight:500}

/* Cover: the photograph sits inside an arch, and the name plate hangs below it. */
.uk-aq-cover{position:relative;min-height:100svh;display:grid;align-content:center;gap:0;padding:78px 0 42px;background:var(--aq-ivory)}
.uk-aq-cover-media{
  position:relative;width:var(--aq-col);margin:0 auto;aspect-ratio:3/4;overflow:hidden;
  border:1px solid var(--aq-line);border-radius:var(--aq-arch) var(--aq-arch) var(--aq-radius) var(--aq-radius);
  background:var(--aq-ivory2);
}
.uk-aq-cover-image{width:100%;height:100%;object-fit:cover;object-position:var(--aq-focus-mobile-x,50%) var(--aq-focus-mobile-y,38%)}
/* Cover without a photograph ---------------------------------------------- */
.uk-aq-cover-empty{
  display:grid;place-items:center;width:100%;height:100%;
  background:
    repeating-linear-gradient(90deg,rgba(196,162,101,.1) 0 1px,transparent 1px 26px),
    linear-gradient(165deg,var(--aq-ivory2),var(--aq-ivory));
}
.uk-aq-cover-empty-mark{color:var(--aq-gold-dp);font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.5rem,7vw,2.4rem);letter-spacing:.28em}

/* The name plate is the point of the whole page. */
.uk-aq-name-plate{
  position:relative;z-index:2;width:var(--aq-col);margin:-34px auto 0;padding:26px 22px 24px;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius);
  background:var(--aq-ivory);box-shadow:0 18px 44px rgba(23,27,26,.1);text-align:center;
}
.uk-aq-name-plate h1{margin:10px 0 0;font-size:clamp(2rem,9vw,2.9rem)}
.uk-aq-name-meaning{margin:12px 0 0;color:var(--aq-muted);font-size:14px;font-style:italic;line-height:1.75}
.uk-aq-cover-date{margin:14px 0 0;color:var(--aq-sage-dp);font-size:12px;letter-spacing:.18em;text-transform:uppercase}

/* Sections: soft arch panels, one thought each. */
.uk-aq-sec{padding:clamp(44px,10vw,72px) 0;background:var(--aq-ivory)}
.uk-aq-sec:nth-of-type(even){background:var(--aq-ivory2)}
.uk-aq-wrap{width:var(--aq-col);margin:0 auto;text-align:center}
.uk-aq-head{display:grid;justify-items:center;gap:8px}
.uk-aq-head h2{margin:0;font-size:clamp(1.5rem,6.4vw,2.05rem)}
.uk-aq-rule{width:62px;height:1px;margin:14px auto 0;background:linear-gradient(90deg,transparent,var(--aq-gold),transparent)}
.uk-aq-bismillah{margin:0 0 14px;color:var(--aq-gold-dp);font-size:clamp(1.05rem,5vw,1.3rem);line-height:2.1}
/* People */
.uk-aq-people{display:grid;gap:22px;margin-top:20px}
.uk-aq-person{min-width:0}
.uk-aq-portrait{
  width:min(62%,210px);margin:0 auto;aspect-ratio:1/1;overflow:hidden;
  border:1px solid var(--aq-gold);border-radius:50%;background:var(--aq-ivory2);
}
.uk-aq-portrait img{width:100%;height:100%;object-fit:cover}
.uk-aq-portrait.is-empty{display:grid;place-items:center}
.uk-aq-portrait.is-empty span{font-family:"Playfair Display",Georgia,serif;font-size:26px;color:var(--aq-gold)}
.uk-aq-person h3{margin:14px 0 0;font-size:clamp(1.3rem,5.6vw,1.6rem)}
.uk-aq-role{margin:6px 0 0;color:var(--aq-sage-dp);font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.uk-aq-fullname{display:block;margin-top:8px;color:var(--aq-muted);font-size:13px}
.uk-aq-parents{margin-top:14px;padding-top:12px;border-top:1px solid var(--aq-hairline)}
.uk-aq-parents span{display:block;color:var(--aq-muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-aq-parents p{margin:6px 0 0;font-size:14px;line-height:1.8}
.uk-aq-parents em{color:var(--aq-gold-dp);font-family:"Playfair Display",Georgia,serif;font-style:normal}
.uk-aq-bio{margin-top:12px;color:var(--aq-muted);font-size:13px;line-height:1.85}

/* Events */
.uk-aq-events{display:grid;gap:14px;margin-top:22px}
.uk-aq-event{
  padding:20px 18px;border:1px solid var(--aq-line);
  border-radius:var(--aq-arch) var(--aq-arch) var(--aq-radius) var(--aq-radius);
  background:var(--aq-ivory);text-align:center;
}
.uk-aq-event h3{margin:0;font-size:18px}
.uk-aq-event-date{margin:0 0 6px;color:var(--aq-sage-dp);font-size:13px;font-weight:700}
.uk-aq-venue{display:block;margin-top:10px;font-size:14px;font-weight:600}
.uk-aq-address{margin:4px 0 0;color:var(--aq-muted);font-size:13px;line-height:1.75}
.uk-aq-scope{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0 0 10px}
.uk-aq-scope span{color:var(--aq-muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-aq-scope strong{color:var(--aq-sage-dp);font-size:12px}
.uk-aq-map{width:100%;height:180px;margin-top:14px;border:1px solid var(--aq-hairline);border-radius:var(--aq-radius)}
.uk-aq-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.uk-aq-actions .uk-aq-button{min-height:42px;padding:0 16px}

/* Countdown: four soft lozenges that fold to two on a narrow phone. */
.uk-aq-count{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:18px 0 0}
.uk-aq-count>span{
  display:grid;gap:4px;padding:14px 6px;border:1px solid var(--aq-line);
  border-radius:var(--aq-radius);background:var(--aq-ivory);
}
.uk-aq-count strong{font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.4rem,6.4vw,2rem);font-variant-numeric:tabular-nums;color:var(--aq-sage-dp)}
.uk-aq-count small{color:var(--aq-muted);font-size:9px;letter-spacing:.18em;text-transform:uppercase}
.uk-aq-count-done{margin:16px 0 0;color:var(--aq-sage-dp);font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:18px}

/* Schedule */
.uk-aq-schedule{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.uk-aq-schedule li{padding:14px 16px;border:1px solid var(--aq-hairline);border-radius:var(--aq-radius);background:var(--aq-ivory);text-align:left}
.uk-aq-schedule h3{margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--aq-sage-dp)}
.uk-aq-schedule p{margin:6px 0 0;color:var(--aq-muted);font-size:13px;line-height:1.8}

/* Gallery: arches alternating with squares. */
.uk-aq-gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 14px}
.uk-aq-gallery-tools>span{color:var(--aq-muted);font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.uk-aq-gallery-tools>div{display:none;gap:6px}
.uk-design-gallery-filmstrip .uk-aq-gallery-tools>div{display:flex}
.uk-aq-gallery-tools button{
  display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius-control);background:transparent;color:var(--aq-sage-dp);
}
.uk-aq-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.uk-aq-gallery figure{position:relative;margin:0;overflow:hidden;aspect-ratio:3/4;border:1px solid var(--aq-line);border-radius:var(--aq-radius);background:var(--aq-ivory2)}
.uk-aq-gallery figure:nth-child(3n+1){border-radius:var(--aq-arch) var(--aq-arch) var(--aq-radius) var(--aq-radius)}
.uk-aq-gallery figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--aq-ease)}
.uk-aq-gallery figure:hover img{transform:scale(1.04)}
.uk-aq-gallery figure button{
  position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:0;border-radius:var(--aq-radius-control);background:rgba(251,247,240,.9);color:var(--aq-ink);
}
.uk-design-gallery-grid .uk-aq-gallery figure{aspect-ratio:1/1;border-radius:var(--aq-radius)}
.uk-design-gallery-editorial .uk-aq-gallery{grid-template-columns:1fr}
.uk-design-gallery-editorial .uk-aq-gallery figure{aspect-ratio:4/5}
.uk-design-gallery-filmstrip .uk-aq-gallery{
  grid-auto-flow:column;grid-auto-columns:minmax(220px,70%);grid-template-columns:none;
  overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory;scrollbar-width:none;
}
.uk-design-gallery-filmstrip .uk-aq-gallery::-webkit-scrollbar{display:none}
.uk-design-gallery-filmstrip .uk-aq-gallery figure{scroll-snap-align:center}

/* Gift, FAQ, contact ------------------------------------------------------ */
.uk-aq-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:20px 0 0}
.uk-aq-tabs button{
  display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 16px;cursor:pointer;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius-control);background:transparent;
  color:var(--aq-muted);font:inherit;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
}
.uk-aq-tabs button.is-active{border-color:var(--aq-sage);background:rgba(138,154,123,.16);color:var(--aq-sage-dp)}
.uk-aq-gift-panel{margin-top:8px}
.uk-aq-accounts,.uk-aq-contacts{display:grid;gap:10px;margin-top:16px}
.uk-aq-accounts>article,.uk-aq-contacts>article{padding:16px;border:1px solid var(--aq-hairline);border-radius:var(--aq-radius);background:var(--aq-ivory);text-align:left}
.uk-aq-accounts span,.uk-aq-contacts span{display:block;color:var(--aq-muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-aq-account{display:block;margin-top:4px;font-size:15px;font-weight:600;letter-spacing:.05em}

.uk-aq-faq{margin:22px 0 0;border-top:1px solid var(--aq-hairline);text-align:left}
.uk-aq-faq details{border-bottom:1px solid var(--aq-hairline)}
.uk-aq-faq summary{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  min-height:56px;padding:14px 0;cursor:pointer;list-style:none;font-size:14px;font-weight:600;
}
.uk-aq-faq summary::-webkit-details-marker{display:none}
.uk-aq-faq summary .bdu-icon{color:var(--aq-gold-dp);transition:transform .3s var(--aq-ease)}
.uk-aq-faq details[open] summary .bdu-icon{transform:rotate(45deg)}
.uk-aq-faq p{margin:0 0 16px;color:var(--aq-muted);font-size:13px;line-height:1.85}

/* Closing: the dua, and nothing after it. */
.uk-aq-closing{padding:clamp(52px,12vw,88px) 0 clamp(44px,10vw,64px);background:var(--aq-dark);color:var(--aq-ivory)}
.uk-aq-closing .uk-aq-wrap{text-align:center}
.uk-aq-closing .uk-aq-eyebrow{margin-top:18px;color:var(--aq-gold)}
.uk-aq-closing .uk-aq-crescent{border-color:var(--aq-gold);color:var(--aq-gold)}
.uk-aq-closing h2{margin:12px 0 0;color:var(--aq-ivory);font-size:clamp(1.8rem,8vw,2.4rem)}
.uk-aq-closing .uk-aq-copy{margin-inline:auto;color:rgba(251,247,240,.76)}
.uk-aq-dua{margin:20px auto 0;max-width:46ch;color:var(--aq-gold);font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:18px;line-height:1.9}
.uk-aq-hashtags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}
.uk-aq-hashtags button{
  display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;cursor:pointer;
  border:1px solid rgba(196,162,101,.36);border-radius:var(--aq-radius-control);background:transparent;
  color:var(--aq-gold);font:inherit;font-size:11px;letter-spacing:.05em;
}
.uk-aq-closing-actions{display:grid;gap:8px;margin-top:22px}
.uk-aq-closing-actions .uk-aq-button{border-color:rgba(196,162,101,.4);color:var(--aq-gold)}
.uk-aq-closing-actions .uk-aq-button.is-solid{border-color:var(--aq-gold);background:var(--aq-gold);color:var(--aq-dark)}

/* Navigation: a crescent that fills as the page is read, and opens the whole
   list across the screen. Everything else in the catalogue tucks its chapters
   into a small panel; a parent reading this is holding a baby in the other arm. */
.uk-aq-nav{
  position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:850;
  max-width:calc(100vw - 28px);
}
.uk-aq-crescent-toggle{
  position:relative;display:grid;place-items:center;width:52px;height:52px;cursor:pointer;
  border:1px solid var(--aq-line);border-radius:50%;
  background:rgba(251,247,240,.96);backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(23,27,26,.18);
  color:var(--aq-sage-dp);font:inherit;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.06em;
}
.uk-aq-crescent-toggle:before{
  content:"";position:absolute;inset:3px;border-radius:50%;
  background:conic-gradient(var(--aq-gold) calc(var(--aq-read,0) * 1%),transparent 0);
  opacity:.34;pointer-events:none;
}
.uk-aq-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.uk-aq-chapter-sheet{
  position:fixed;inset:0;z-index:1150;display:grid;align-content:center;gap:6px;
  padding:26px 22px calc(26px + env(safe-area-inset-bottom));
  background:rgba(251,247,240,.98);
}
.uk-aq-chapter-sheet>p{
  margin:0 0 10px;color:var(--aq-sage-dp);font-size:10px;font-weight:700;letter-spacing:.26em;text-transform:uppercase;
}
.uk-aq-chapter-sheet ul{display:grid;gap:6px;margin:0;padding:0;list-style:none;max-height:64svh;overflow-y:auto}
.uk-aq-nav button{
  display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:0 16px;cursor:pointer;
  border:1px solid var(--aq-hairline);border-radius:var(--aq-radius);background:transparent;text-align:left;
  color:var(--aq-ink);font:inherit;font-size:15px;
}
.uk-aq-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uk-aq-nav button i{
  font-style:normal;font-variant-numeric:tabular-nums;color:var(--aq-gold-dp);font-size:11px;letter-spacing:.16em;
}
.uk-aq-nav button.is-active{border-color:var(--aq-sage);background:rgba(138,154,123,.14)}
.uk-aq-sheet-close{margin-top:12px;width:100%}

.uk-aq-rail{position:fixed;left:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:860;display:grid;gap:6px;justify-items:start}
/* A fixed control has to read against paper AND against ink, because the
   page scrolls under it. Measured before this ring: 1.15:1 against the
   background at every scroll position. The ring is the half that the fill cannot be. */
.uk-aq-rail-toggle,.uk-aq-rail-panel button{
  display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius-control);
  background:rgba(251,247,240,.96);color:var(--aq-sage-dp);box-shadow:0 0 0 2px var(--aq-ink),0 8px 22px rgba(23,27,26,.16);
}
.uk-aq-rail-panel{display:grid;gap:6px;justify-items:start}
.uk-aq-rail-panel button.is-active{border-color:var(--aq-sage);background:rgba(138,154,123,.18)}

.uk-amani main{padding-bottom:calc(84px + env(safe-area-inset-bottom))}

/* Modals ------------------------------------------------------------------ */
.uk-aq-sheet,.uk-aq-lightbox{
  position:fixed;inset:0;z-index:1200;display:grid;opacity:0;visibility:hidden;
  background:rgba(23,27,26,.76);transition:opacity .28s var(--aq-ease),visibility .28s;
}
.uk-aq-sheet{place-items:end center}
.uk-aq-lightbox{place-items:center}
.uk-aq-sheet.is-open,.uk-aq-lightbox.is-open{opacity:1;visibility:visible}
.uk-aq-sheet-panel{
  width:min(100%,500px);padding:26px 22px calc(26px + env(safe-area-inset-bottom));
  border-radius:var(--aq-arch) var(--aq-arch) 0 0;background:var(--aq-ivory);text-align:center;
}
.uk-aq-sheet-panel h2{margin:10px 0 0;font-size:1.45rem}
.uk-aq-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0 0}
.uk-aq-share-grid button{
  display:flex;align-items:center;gap:9px;min-height:52px;padding:0 14px;cursor:pointer;
  border:1px solid var(--aq-line);border-radius:var(--aq-radius);background:transparent;
  color:var(--aq-ink);font:inherit;font-size:13px;font-weight:600;
}
.uk-aq-lightbox-panel{position:relative;width:min(94vw,860px);max-height:88svh;display:grid;place-items:center}
.uk-aq-lightbox-panel img{max-width:100%;max-height:78svh;object-fit:contain;background:var(--aq-ivory2)}
.uk-aq-lightbox.is-switching img{opacity:.35;transition:opacity .12s linear}
.uk-aq-lightbox-counter{margin-top:12px;color:var(--aq-gold);font-size:11px;letter-spacing:.2em}
.uk-aq-lightbox button{
  position:absolute;display:grid;place-items:center;width:46px;height:46px;cursor:pointer;
  border:1px solid rgba(196,162,101,.36);border-radius:var(--aq-radius-control);background:rgba(23,27,26,.6);color:var(--aq-gold);
}
.uk-aq-lightbox-close{top:-4px;right:-4px}
.uk-aq-lightbox-prev{left:-4px;top:50%;transform:translateY(-50%)}
.uk-aq-lightbox-next{right:-4px;top:50%;transform:translateY(-50%)}
body.is-amani-modal-open{overflow:hidden}

/* Engagement skin --------------------------------------------------------- */
.uk-aq-engagement .bdu-public-card{
  max-width:none;margin:0;padding:22px 0 0;border:0;border-top:1px solid var(--aq-hairline);
  border-radius:0;background:transparent;box-shadow:none;color:var(--aq-ink);text-align:left;
}
.uk-aq-engagement .bdu-public-card-head{display:flex;align-items:center;gap:12px}
.uk-aq-engagement .bdu-public-icon{
  display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--aq-line);
  border-radius:var(--aq-radius-control);background:transparent;color:var(--aq-sage-dp);
}
.uk-aq-engagement .bdu-public-card-head p{margin:0;color:var(--aq-sage-dp);font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.uk-aq-engagement .bdu-public-card-head h2{margin:2px 0 0;font-family:"Playfair Display",Georgia,serif;font-size:clamp(1.35rem,5vw,1.8rem);font-weight:500;color:var(--aq-ink)}
.uk-aq-engagement .bdu-public-card-copy{color:var(--aq-muted);font-size:14px;line-height:1.9}
.uk-aq-engagement .bdu-public-form{display:grid;gap:12px;margin-top:18px}
.uk-aq-engagement .bdu-public-form label{color:var(--aq-ink);font-size:11px;font-weight:700;letter-spacing:.06em}
.uk-aq-engagement .bdu-public-form :is(input,select,textarea){
  border:1px solid var(--aq-line);border-radius:var(--aq-radius);background:var(--aq-ivory);color:var(--aq-ink);
}
.uk-aq-engagement .bdu-public-form :is(input,select){min-height:46px}
.uk-aq-engagement .bdu-public-form :is(input,select,textarea):focus{border-color:var(--aq-sage);box-shadow:0 0 0 3px rgba(138,154,123,.18)}
.uk-aq-engagement .bdu-public-form small{color:var(--aq-muted)}
.uk-aq-engagement .bdu-public-choice-group span{
  min-height:44px;border:1px solid var(--aq-line);border-radius:var(--aq-radius-control);background:var(--aq-ivory);color:var(--aq-muted);
}
.uk-aq-engagement .bdu-public-choice-group input:checked+span{border-color:var(--aq-sage);background:rgba(138,154,123,.16);color:var(--aq-sage-dp)}
.uk-aq-engagement .bdu-public-primary{
  min-height:46px;border:1px solid var(--aq-sage);border-radius:var(--aq-radius-control);background:var(--aq-sage);color:var(--aq-ivory);
  font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.uk-aq-engagement .bdu-public-primary:hover{background:var(--aq-sage-dp)}
.uk-aq-engagement :is(.bdu-public-known-guest,.bdu-public-notice,.bdu-public-wish,.bdu-public-rsvp-saved){
  border:1px solid var(--aq-hairline);border-radius:var(--aq-radius);background:var(--aq-ivory)
}
.uk-aq-engagement .bdu-public-wishes-list>h3{margin:0 0 8px;color:var(--aq-sage-dp);font-family:inherit;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.uk-aq-engagement .bdu-public-wish p{color:var(--aq-ink)}
.uk-aq-engagement .bdu-public-wish footer{color:var(--aq-muted)}
.uk-aq-engagement .bdu-public-pin{color:var(--aq-sage-dp)}

/* The platform-level personalized chip, matched to the ivory canvas. */
.bdu-public-theme-amani .bdu-guest-personalized{
  border-color:rgba(138,154,123,.5);background:#FBF7F0;box-shadow:0 8px 24px rgba(23,27,26,.14);
}
.bdu-public-theme-amani .bdu-guest-personalized strong{color:#5F7052}

/* Desktop ----------------------------------------------------------------- */
@media(min-width:768px){
  .uk-amani{font-size:16px;--aq-col:min(100% - 72px, 720px)}
  .uk-aq-gate-media img{object-position:var(--aq-focus-desktop-x,50%) var(--aq-focus-desktop-y,42%)}
  .uk-aq-cover-image{object-position:var(--aq-focus-desktop-x,50%) var(--aq-focus-desktop-y,42%)}
  .uk-aq-cover{padding:96px 0 56px}
  .uk-aq-cover-media{width:min(100% - 72px,520px);aspect-ratio:4/5}
  .uk-aq-name-plate{width:min(100% - 72px,560px);padding:30px 30px 28px}  .uk-aq-people{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:30px}
  /* A workspace can hold one entry or five. An odd last entry would sit in the
     first column with an empty one beside it, so it takes the whole row and
     centres itself — which also covers the case of a single entry. */
  .uk-aq-people>*:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:min(100%,360px)}
  .uk-aq-events{grid-template-columns:repeat(2,minmax(0,1fr))}
  .uk-aq-events>*:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:min(100%,420px)}
  .uk-aq-accounts,.uk-aq-contacts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .uk-aq-accounts>*:last-child:nth-child(odd),
  .uk-aq-contacts>*:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:min(100%,420px)}
  .uk-aq-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
  .uk-design-gallery-grid .uk-aq-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
  .uk-design-gallery-filmstrip .uk-aq-gallery{grid-auto-columns:minmax(260px,32%)}
  .uk-aq-closing-actions{grid-auto-flow:column;justify-content:center}
  .uk-aq-nav{right:clamp(14px,2vw,28px);bottom:clamp(16px,2.6vh,30px)}
  .uk-aq-rail{left:clamp(14px,2vw,28px);bottom:clamp(16px,2.6vh,30px)}
  .uk-aq-chapter-sheet ul{width:min(100%,520px);margin:0 auto}
  .uk-aq-feedback{top:20px}
  .uk-aq-toast{left:auto;right:28px;bottom:28px;transform:translate(0,10px)}
  .uk-aq-toast.is-show{transform:translate(0,0)}
  .uk-aq-sheet{place-items:center}
  .uk-aq-sheet-panel{border-radius:var(--aq-radius)}
  .uk-aq-lightbox-close{top:-52px;right:0}
  .uk-aq-lightbox-prev{left:-62px}
  .uk-aq-lightbox-next{right:-62px}
}

/* Narrow phones and short viewports --------------------------------------- */
@media(max-width:760px){
  .uk-aq-share-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
  /* Four lozenges leave too little room for a number and a word side by side. */
  .uk-aq-count{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:400px){
  .uk-aq-gallery{grid-template-columns:1fr}
  .uk-aq-name-plate{padding:22px 18px 20px}
}
@media(max-height:620px){
  .uk-aq-gate{justify-content:center;padding-top:18px}
  .uk-aq-gate-body h1{font-size:clamp(1.6rem,8vw,2.2rem)}
  .uk-aq-crescent{width:46px;height:46px;font-size:13px}
  .uk-aq-guest{margin-top:12px;padding:9px 14px}
  .uk-aq-gate-body .uk-aq-button{margin-top:14px}
  .uk-aq-cover{min-height:100svh;padding:64px 0 30px}
  .uk-aq-cover-media{aspect-ratio:1/1}
  .uk-aq-chapter-sheet ul{max-height:52svh}
}

/* Reduced motion ---------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .uk-amani *{scroll-behavior:auto!important;animation:none!important;transition-duration:.001ms!important}
  .uk-aq-reveal,.uk-aq-reveal-item{opacity:1;transform:none}
  .uk-aq-gallery figure img{transform:none!important}
}
