/* Agency Registration: the registration app's own styles (scoped to #amis-agency, built by tools/build-agency.py). */
/* ============================================================
     AMIS DEVELOPMENT — BRAND SYSTEM  (Brand Guidelines 2026)
     Colour   : AMIS Gold #EFA865 · Ink #2A2622 (primary)
                Ivory #FBF6EF · Sand #E7DCCD · Stone #8C8178 · Bronze #C9803F
                Tints & shades of the core palette only (p.41).
     Type     : Romie (primary — headlines, sub-headings, numerals)
                Inter (secondary — body, captions, web UI, micro-data)
     Scale    : Golden-ratio hierarchy from the primary headline X (p.49–50)
                Eyebrow 20–25% · Headline X · Sub-heading 60% · Body 30–35% · CTA 35–40%
     Tracking : Eyebrow 150 · Headline 0–20 · Sub-heading 0–20 · Body 0 · CTA 50
     Leading  : Eyebrow 120% · Headline 110% · Sub 110% · Body 130% · CTA 100%
     Gradients: Metallic Shift (Gold→Bronze) for premium buttons
                Light Bleed (Gold→Ivory) for background washes
     Language : Apex Notch (structural frame) · Heritage Pattern (tonal watermark)
                Architectural-wireframe iconography · 70/30 rule of emptiness
     ============================================================ *//* ---- Romie (trial build — swap url() for the licensed Romie files) ---- */#amis-agency{
    /* Primary */
    --gold:#EFA865;
    --ink:#2A2622;
    /* Secondary */
    --ivory:#FBF6EF;
    --sand:#E7DCCD;
    --stone:#8C8178;
    --bronze:#C9803F;
    /* Tints & shades (p.41) */
    --ink-deep:#1C1916;      /* Ink shade — deep backgrounds */
    --stone-text:#6E655D;    /* Stone shade — AA body text on Ivory */
    --bronze-text:#9C5F26;   /* Bronze shade — AA text/links on Ivory */
    --bronze-deep:#8A4F1F;   /* Bronze shade — required markers, validation */
    --ivory-tint:#FDFAF5;    /* Ivory tint — card surfaces (no stark white) */
    --sand-tint:#F2EBE0;     /* Sand tint — hairlines & washes */
    --gold-tint:#F7D3B2;     /* Gold 50% tint */

    /* Gradient system (p.42) */
    --metallic-shift:linear-gradient(90deg,var(--gold) 0%,var(--bronze) 100%);
    --light-bleed:linear-gradient(90deg,var(--gold) 0%,var(--ivory) 100%);

    --line:var(--sand);

    /* Font families */
    --ff-display:'Romie','Romie Trial',Georgia,'Times New Roman',serif;
    --ff-body:'Inter','Helvetica Neue',Arial,sans-serif;

    /* Type scale — X is the primary headline size; everything derives from it */
    --x:clamp(30px,5.2vw,46px);
    --fs-eyebrow:max(10.5px,calc(var(--x) * .23));   /* 20–25% of X */
    --fs-sub:calc(var(--x) * .6);                     /* 60% of X   */
    --fs-body:max(14px,calc(var(--x) * .34));         /* 30–35% of X */
    --fs-cta:max(12px,calc(var(--x) * .36));          /* 35–40% of X */
    --fs-micro:max(12px,calc(var(--x) * .28));        /* captions & micro-data (Inter) */
    --fs-cta-sm:max(11px,calc(var(--x) * .26));       /* utility controls (Attach) */

    /* Tracking (thousandths of an em) */
    --track-eyebrow:.15em;    /* 150 */
    --track-display:.015em;   /* 0–20 */
    --track-cta:.05em;        /* 50 */

    /* Leading */
    --lh-eyebrow:1.2;
    --lh-display:1.1;
    --lh-body:1.3;
    --lh-cta:1;

    --radius:0px;             /* Architectural — square edges throughout */
    --pad-x:clamp(20px,5vw,68px);

    /* Heritage pattern tiles (p.60–61) — tonal, "felt, not read" */
    --pattern-on-ink:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 143.151 147.273%22 width=%22143.151%22 height=%22147.273%22%3E%3Cpath transform=%22translate(70.546 98.182) scale(1 -1)%22 fill=%22%23E7DCCD%22 fill-opacity=%22.055%22 d=%22M0 0 L0 0 C3.197 2.072 4.59 6.039 3.409 9.66 L-22.833 75.383 L-49.067 9.66 C-50.248 6.039 -48.855 2.072 -45.658 0 L-70.546 0 C-65.619 2.968 -61.665 7.29 -59.13 12.455 C-57.68 15.414 -55.881 19.351 -53.683 24.59 L-22.833 98.182 L8.025 24.59 C11.352 16.66 13.762 11.715 15.431 8.652 C16.997 5.771 19.29 3.379 22.094 1.691 L24.888 0 Z%22/%3E%3C/svg%3E");
    --pattern-on-ivory:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 143.151 147.273%22 width=%22143.151%22 height=%22147.273%22%3E%3Cpath transform=%22translate(70.546 98.182) scale(1 -1)%22 fill=%22%23E7DCCD%22 d=%22M0 0 L0 0 C3.197 2.072 4.59 6.039 3.409 9.66 L-22.833 75.383 L-49.067 9.66 C-50.248 6.039 -48.855 2.072 -45.658 0 L-70.546 0 C-65.619 2.968 -61.665 7.29 -59.13 12.455 C-57.68 15.414 -55.881 19.351 -53.683 24.59 L-22.833 98.182 L8.025 24.59 C11.352 16.66 13.762 11.715 15.431 8.652 C16.997 5.771 19.29 3.379 22.094 1.691 L24.888 0 Z%22/%3E%3C/svg%3E");
  }#amis-agency *,#amis-agency *::before,#amis-agency *::after{box-sizing:border-box;}#amis-agency .ar-sr-only{
    position:absolute;
    width:1px;height:1px;
    padding:0;margin:-1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    white-space:nowrap;
    border:0;
  }#amis-agency .skip-link{
    position:absolute;
    left:12px;top:-60px;
    z-index:1200;
    background:var(--ink);
    color:var(--ivory);
    font-family:var(--ff-body);
    font-size:var(--fs-cta-sm);
    font-weight:500;
    letter-spacing:var(--track-cta);
    line-height:var(--lh-cta);
    text-transform:uppercase;
    padding:14px 20px;
    text-decoration:none;
    transition:top .2s ease;
  }#amis-agency .skip-link:focus{top:12px;}#amis-agency{margin:0;padding:0;}#amis-agency{-webkit-text-size-adjust:100%;}#amis-agency{
    background:var(--ivory);
    color:var(--ink);
    font-family:var(--ff-body);
    font-weight:400;
    font-size:var(--fs-body);
    line-height:var(--lh-body);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }#amis-agency img,#amis-agency svg{max-width:100%;height:auto;}/* Numerals & plates sit on the display face */#amis-agency .num{font-family:var(--ff-display);}/* Shared type tiers */#amis-agency .eyebrow,#amis-agency .top-eyebrow,#amis-agency .brand-eyebrow,#amis-agency .board-label,#amis-agency .modal-eyebrow,#amis-agency .textrow label,#amis-agency .owner-subhead,#amis-agency .tc-format,#amis-agency .tc-action{
    font-family:var(--ff-body);
    font-weight:400;
    font-size:var(--fs-eyebrow);
    letter-spacing:var(--track-eyebrow);
    line-height:var(--lh-eyebrow);
    text-transform:uppercase;
  }/* ---------- LAYOUT: asymmetrical grid (p.63) ----------
     The dark directory rail is the immutable 25–30% column reserved on
     every layout; the form column never fills more than ~70% of the canvas. */#amis-agency .ar-wrap{
    display:grid;
    grid-template-columns:1fr;
    min-height:100vh;
    min-height:100dvh;
  }@media (min-width:1024px){#amis-agency .ar-wrap{grid-template-columns:clamp(300px,28%,400px) 1fr;}
  }@media (min-width:1900px){#amis-agency .ar-wrap{
      grid-template-columns:420px 1fr;
      max-width:1900px;
      margin-inline:auto;
    }#amis-agency .directory::before{
      content:"";
      position:absolute;
      top:0; bottom:0; right:100%;
      width:50vw;
      background:linear-gradient(180deg,var(--ink) 0%, var(--ink-deep) 100%);
    }
  }/* ---------- SIDEBAR: DIRECTORY RAIL ---------- */#amis-agency .directory{
    /* Wordmark never renders below the 120px digital minimum (p.24); clear
       space on all sides equals the cap-height "X" (0.272 × the mark's width). */
    --logo-w:clamp(120px,34vw,160px);
    --cap:calc(var(--logo-w) * 0.272);
    position:relative;
    isolation:isolate;
    background:linear-gradient(180deg,var(--ink) 0%, var(--ink-deep) 100%);
    color:var(--sand);
    padding:max(clamp(28px,5vw,44px), var(--cap)) clamp(20px,5vw,36px) clamp(36px,6vw,56px);
    padding-left:max(clamp(20px,5vw,36px), env(safe-area-inset-left));
    padding-right:max(clamp(20px,5vw,36px), env(safe-area-inset-right));
    border-bottom:1px solid rgba(239,168,101,0.28);
    overflow:hidden;
  }/* Decoration layer: clipped to the rail's box so the pattern and notch can
     never extend the scrollable area. */#amis-agency .rail-deco{
    position:absolute;
    inset:0;
    overflow:hidden;
    pointer-events:none;
    z-index:0;
  }/* Heritage Pattern — tonal watermark over the rail (p.61) */#amis-agency .rail-deco::before{
    content:"";
    position:absolute;
    inset:auto 0 0 0;
    height:46%;
    background-image:var(--pattern-on-ink);
    background-size:46.7px 48.0px;
    -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 55%);
            mask-image:linear-gradient(180deg,transparent 0%,#000 55%);
  }/* Apex Notch — structural frame anchoring the rail's corner (p.58–59) */#amis-agency .apex-notch{
    position:absolute;
    right:-6%;
    bottom:-4%;
    width:min(78%,360px);
    height:auto;
    color:var(--gold);
    opacity:.16;
    pointer-events:none;
  }#amis-agency .directory > *:not(.rail-deco){position:relative;z-index:1;}@media (min-width:1024px){#amis-agency .directory{
      position:sticky;
      top:0;
      height:100vh;
      height:100dvh;
      overflow-y:auto;
      display:flex;
      flex-direction:column;
      border-bottom:none;
      border-right:1px solid rgba(239,168,101,0.28);
    }#amis-agency .directory .directory-footer{margin-top:auto;}
  }/* Short desktop viewports: tighten the rail's vertical rhythm so the whole
     checklist fits without a scrollbar. */@media (min-width:1024px) and (max-height:860px){#amis-agency .directory{
      --logo-w:clamp(120px,30vw,136px);
      padding-top:max(26px,var(--cap));
      padding-bottom:28px;
    }#amis-agency .directory .brand-eyebrow{margin-bottom:8px;}#amis-agency .directory h1{margin-bottom:8px;}#amis-agency .directory .ar-sub{margin-bottom:18px;padding-bottom:16px;}#amis-agency .board-label{margin-bottom:8px;}#amis-agency .directory-row{padding:9px 0;gap:12px;}#amis-agency .directory-row .plate{width:26px;height:26px;flex-basis:26px;font-size:12px;}#amis-agency .directory-footer{margin-top:auto;padding-top:14px;}#amis-agency .directory-footer br + br{display:none;}
  }@media (min-width:1024px) and (max-height:720px){#amis-agency .directory{--logo-w:120px;padding-top:max(22px,var(--cap));padding-bottom:22px;}#amis-agency .directory .ar-sub{display:none;}#amis-agency .directory-row{padding:7px 0;}#amis-agency .directory-footer{font-size:max(11px,calc(var(--fs-micro) * .9));line-height:1.45;}
  }#amis-agency .directory .logo{
    width:var(--logo-w);
    height:auto;
    display:block;
    margin:0 0 var(--cap);
  }#amis-agency .directory .brand-eyebrow{
    color:var(--gold);
    margin:0 0 12px;
  }#amis-agency .directory h1{
    font-family:var(--ff-display);
    font-weight:400;
    font-size:var(--fs-sub);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    margin:0 0 12px;
    color:var(--ivory);
  }#amis-agency .directory .ar-sub{
    font-size:var(--fs-micro);
    font-weight:300;
    color:rgba(231,220,205,0.74);
    line-height:1.5;
    margin:0 0 32px;
    padding-bottom:26px;
    border-bottom:1px solid rgba(231,220,205,0.16);
  }#amis-agency .board-label{
    color:rgba(231,220,205,0.7);
    margin:0 0 14px;
  }#amis-agency #directory-list{
    display:grid;
    grid-template-columns:1fr;
    gap:0;
  }@media (min-width:560px) and (max-width:1023px){#amis-agency #directory-list{
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:0 26px;
    }
  }#amis-agency .directory-row{
    display:flex;
    align-items:center;
    gap:14px;
    padding:13px 0;
    border-bottom:1px solid rgba(231,220,205,0.12);
    font-size:var(--fs-micro);
  }#amis-agency .directory-row .plate{
    width:28px;height:28px;flex:0 0 28px;
    border:1px solid rgba(239,168,101,0.55);
    display:flex;align-items:center;justify-content:center;
    font-family:var(--ff-display);
    font-weight:400;
    font-size:13px;
    line-height:1;
    color:var(--gold);
    transition:background-color .25s ease, color .25s ease, border-color .25s ease;
  }#amis-agency .directory-row.complete .plate{
    background:var(--metallic-shift);
    color:var(--ink);
    border-color:var(--gold);
  }#amis-agency .directory-row .label{
    flex:1;
    min-width:0;
    color:var(--sand);
  }#amis-agency .directory-row .count{
    font-family:var(--ff-display);
    font-size:15px;
    color:rgba(231,220,205,0.7);
    flex:0 0 auto;
    font-variant-numeric:lining-nums;
  }#amis-agency .directory-row.complete .count{color:var(--gold);}#amis-agency .directory-footer{
    margin-top:34px;
    padding-top:22px;
    border-top:1px solid rgba(231,220,205,0.16);
    font-size:var(--fs-micro);
    font-weight:300;
    color:rgba(231,220,205,0.66);
    line-height:1.55;
    overflow-wrap:break-word;
  }#amis-agency .directory-footer a{color:var(--gold); text-decoration:none;}#amis-agency .directory-footer a:hover{text-decoration:underline;}/* ---------- MAIN CONTENT ---------- */#amis-agency main{
    --pad-left:max(var(--pad-x), env(safe-area-inset-left));
    --pad-right:max(var(--pad-x), env(safe-area-inset-right));
    width:100%;
    max-width:860px;
    margin-inline:auto;
    padding:clamp(34px,5vw,64px) var(--pad-right) clamp(64px,10vw,110px) var(--pad-left);
    position:relative;
  }/* Light Bleed wash — Gold → Ivory (p.42) as the canvas' top rule */#amis-agency main::before{
    content:"";
    position:absolute;
    top:0; left:var(--pad-left); right:var(--pad-right);
    height:2px;
    background:var(--light-bleed);
  }#amis-agency .top-eyebrow{
    color:var(--bronze-text);
    margin:clamp(22px,4vw,30px) 0 16px;
  }#amis-agency h2.ar-hero{
    font-family:var(--ff-display);
    font-weight:300;
    font-size:var(--x);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    text-transform:uppercase;
    margin:0 0 22px;
    color:var(--ink);
    max-width:22ch;
  }@media (max-width:640px){#amis-agency h2.ar-hero br{display:none;} }#amis-agency .hero-desc{
    font-size:var(--fs-body);
    font-weight:300;
    line-height:1.5;
    color:var(--stone-text);
    max-width:58ch;
    margin:0 0 clamp(30px,5vw,44px);
  }#amis-agency .hero-desc strong{color:var(--ink); font-weight:500;}#amis-agency fieldset{
    border:none;
    padding:0;
    margin-inline:0;
    margin:0 0 clamp(40px,7vw,56px);
    min-width:0;
  }#amis-agency .section-head{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:22px;
    padding-bottom:14px;
    border-bottom:1px solid var(--ink);
  }#amis-agency .section-head .tag{
    font-family:var(--ff-display);
    font-size:13px;
    line-height:1;
    color:var(--gold);
    background:var(--ink);
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 30px;
  }#amis-agency .section-head h3{
    font-family:var(--ff-display);
    font-weight:400;
    font-size:var(--fs-sub);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    color:var(--ink);
    margin:0;
  }#amis-agency .section-head h3 .qualifier{
    font-family:var(--ff-body);
    font-weight:300;
    color:var(--stone-text);
    font-size:var(--fs-micro);
    letter-spacing:0;
    display:inline-block;
    text-transform:none;
  }#amis-agency .ar-field{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:center;
    gap:12px 20px;
    padding:clamp(14px,3vw,18px) clamp(14px,3vw,22px);
    background:var(--ivory-tint);
    border:1px solid var(--line);
    margin-bottom:10px;
    transition:border-color .2s ease, box-shadow .2s ease;
  }#amis-agency .ar-field:hover{
    border-color:var(--gold);
    box-shadow:0 3px 12px rgba(42,38,34,0.06);
  }#amis-agency .field-info{flex:1 1 240px; min-width:0;}#amis-agency .field-info .name{
    font-size:var(--fs-body);
    color:var(--ink);
    font-weight:500;
    line-height:1.3;
  }#amis-agency .field-info .hint{
    font-size:var(--fs-micro);
    font-weight:300;
    color:var(--stone-text);
    margin-top:4px;
    line-height:1.4;
  }#amis-agency .field-info .tmpl{
    display:inline-flex;
    align-items:center;
    gap:6px;
    font-size:var(--fs-micro);
    color:var(--bronze-text);
    text-decoration:none;
    margin-top:7px;
    font-weight:500;
    border-bottom:1px solid transparent;
    overflow-wrap:anywhere;
  }#amis-agency .field-info .tmpl:hover{border-bottom-color:var(--bronze-text);}/* Wireframe download glyph (p.62) */#amis-agency .field-info .tmpl::before{
    content:"";
    width:11px;height:11px;flex:0 0 11px;
    background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%239C5F26' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 1v7.5M2.8 5.6 6 8.8l3.2-3.2M1.5 11h9'/%3E%3C/svg%3E");
  }#amis-agency .field-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:5px;
    flex:0 0 auto;
  }#amis-agency .upload-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    font-family:var(--ff-body);
    font-size:var(--fs-cta-sm);
    font-weight:500;
    letter-spacing:var(--track-cta);
    line-height:var(--lh-cta);
    text-transform:uppercase;
    color:var(--ink);
    background:var(--sand);
    border:1px solid var(--sand);
    padding:12px 20px;
    cursor:pointer;
    white-space:nowrap;
    transition:background-color .2s ease, border-color .2s ease, color .2s ease;
  }#amis-agency .upload-btn:hover{background:var(--gold); border-color:var(--gold); color:var(--ink);}#amis-agency .ar-field.done{border-color:var(--bronze);}#amis-agency .ar-field.done .upload-btn{background:var(--metallic-shift); border-color:var(--bronze); color:var(--ink);}#amis-agency .ar-field input[type=file]{
    position:absolute;
    width:1px;height:1px;
    opacity:0;
    pointer-events:none;
  }#amis-agency .upload-btn:focus-within{
    outline:2px solid var(--bronze-text);
    outline-offset:2px;
    background:var(--gold);
  }#amis-agency .size-hint{
    display:block;
    font-family:var(--ff-body);
    font-size:max(10px,calc(var(--fs-eyebrow) * .95));
    font-weight:400;
    letter-spacing:var(--track-eyebrow);
    text-transform:uppercase;
    color:var(--bronze-text);
    text-align:right;
  }@media (max-width:560px){#amis-agency .ar-field{flex-direction:column; align-items:stretch;}#amis-agency .field-actions{width:100%; align-items:stretch;}#amis-agency .upload-btn{width:100%;}#amis-agency .size-hint{text-align:center;}
  }#amis-agency .textrow{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
    gap:16px;
    margin-bottom:26px;
  }#amis-agency .textrow label{
    display:block;
    color:var(--stone-text);
    margin-bottom:8px;
  }#amis-agency .textrow input,#amis-agency .textrow select{
    width:100%;
    min-height:48px;
    padding:12px 14px;
    border:1px solid var(--line);
    border-radius:0;
    font-family:var(--ff-body);
    font-weight:400;
    font-size:16px; /* prevents iOS zoom-on-focus */
    line-height:var(--lh-body);
    background:var(--ivory-tint);
    color:var(--ink);
  }#amis-agency .textrow select{
    appearance:none;
    -webkit-appearance:none;
    /* Wireframe chevron (p.62) */
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%238C8178' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 6l4.5 4.5L12.5 6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 14px center;
    background-size:16px;
    padding-right:40px;
  }#amis-agency .textrow select:invalid{color:var(--stone-text);}#amis-agency .textrow input::placeholder{color:var(--stone-text); opacity:.75;}#amis-agency .textrow input:focus,#amis-agency .textrow select:focus{outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(239,168,101,0.22);}#amis-agency .required{
    color:var(--bronze-deep);
    font-weight:500;
  }#amis-agency .required-note{
    font-size:var(--fs-micro);
    font-weight:300;
    color:var(--stone-text);
    margin:-12px 0 26px;
  }#amis-agency .owner-subhead{
    display:flex;
    align-items:baseline;
    gap:10px;
    font-weight:500;
    color:var(--ink);
    margin:24px 0 12px;
  }#amis-agency .owner-subhead:first-of-type{margin-top:6px;}#amis-agency .owner-subhead .optional-tag{
    font-weight:300;
    text-transform:none;
    letter-spacing:0;
    font-size:var(--fs-micro);
    color:var(--stone-text);
  }#amis-agency .add-owner-btn{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-height:48px;
    width:100%;
    font-family:var(--ff-body);
    font-size:var(--fs-cta-sm);
    font-weight:500;
    letter-spacing:var(--track-cta);
    line-height:var(--lh-cta);
    text-transform:uppercase;
    color:var(--bronze-text);
    background:transparent;
    border:1px dashed var(--bronze);
    padding:12px 18px;
    cursor:pointer;
    margin:12px 0 4px;
    transition:background-color .2s ease, border-color .2s ease, color .2s ease;
  }#amis-agency .add-owner-btn .optional-tag{
    font-weight:300;
    text-transform:none;
    letter-spacing:0;
    font-size:var(--fs-micro);
    line-height:1.3;
  }#amis-agency .subsidiary-toggle{margin:0 0 clamp(40px,7vw,56px);}#amis-agency .add-owner-btn:hover{background:var(--sand); border-color:var(--gold); color:var(--ink);}#amis-agency .add-owner-btn:disabled{
    opacity:.55;
    cursor:not-allowed;
    background:transparent;
  }#amis-agency .add-owner-btn:disabled:hover{background:transparent; border-color:var(--bronze); color:var(--bronze-text);}#amis-agency .owner-block{position:relative;}#amis-agency .textrow input.touched:invalid{
    border-color:var(--bronze-deep);
  }#amis-agency .submit-row{
    margin-top:16px;
    padding-top:32px;
    border-top:1px solid var(--line);
    display:flex;
    align-items:center;
    gap:24px;
    flex-wrap:wrap;
  }/* Primary CTA — The Metallic Shift (p.42: "premium digital buttons") */#amis-agency .submit-btn{
    font-family:var(--ff-body);
    font-size:var(--fs-cta);
    font-weight:500;
    letter-spacing:var(--track-cta);
    line-height:var(--lh-cta);
    text-transform:uppercase;
    background:var(--metallic-shift);
    color:var(--ink);
    border:none;
    padding:18px 40px;
    min-height:52px;
    cursor:pointer;
    flex:1 1 auto;
    max-width:100%;
    position:relative;
    transition:box-shadow .25s ease, transform .15s ease, filter .25s ease;
  }@media (min-width:560px){#amis-agency .submit-btn{flex:0 0 auto;} }#amis-agency .submit-btn:hover:not(:disabled){
    box-shadow:0 8px 24px rgba(201,128,63,0.28);
    filter:brightness(1.03);
    transform:translateY(-1px);
  }#amis-agency .submit-btn:disabled{opacity:.6; cursor:default;}#amis-agency .submit-note{
    font-size:var(--fs-micro);
    font-weight:300;
    color:var(--stone-text);
    line-height:1.5;
    flex:1 1 260px;
    overflow-wrap:anywhere;
  }#amis-agency .submit-note b{color:var(--ink); font-weight:500;}#amis-agency .note-banner{
    display:block;
    background:var(--sand);
    border-left:2px solid var(--bronze);
    padding:16px 20px;
    font-size:var(--fs-micro);
    font-weight:300;
    color:var(--ink);
    line-height:1.5;
    margin-bottom:26px;
    max-width:78ch;
  }#amis-agency .note-banner strong{font-weight:500;}/* ---------- Template panel ---------- */#amis-agency .template-panel{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:var(--ink);
    padding:clamp(24px,4vw,34px);
    margin-bottom:clamp(34px,6vw,48px);
  }#amis-agency .template-panel::after{
    content:"";
    position:absolute;
    inset:0;
    background-image:var(--pattern-on-ink);
    background-size:46.7px 48.0px;
    -webkit-mask-image:linear-gradient(90deg,transparent 30%,#000 100%);
            mask-image:linear-gradient(90deg,transparent 30%,#000 100%);
    pointer-events:none;
    z-index:-1;
  }#amis-agency .template-panel-title{
    font-family:var(--ff-display);
    font-weight:400;
    font-size:var(--fs-sub);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    color:var(--ivory);
    margin:0 0 10px;
    max-width:24ch;
  }#amis-agency .template-panel-desc{
    font-size:var(--fs-micro);
    font-weight:300;
    color:rgba(231,220,205,0.74);
    line-height:1.5;
    margin:0 0 22px;
    max-width:60ch;
  }#amis-agency .template-panel-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:12px;
  }#amis-agency .template-card{
    display:flex;
    flex-direction:column;
    gap:12px;
    background:rgba(251,246,239,0.04);
    border:1px solid rgba(239,168,101,0.4);
    padding:18px 18px 16px;
    text-decoration:none;
    transition:background-color .2s ease, border-color .2s ease;
  }#amis-agency .template-card:hover{
    background:rgba(239,168,101,0.12);
    border-color:var(--gold);
  }#amis-agency .tc-format{
    color:var(--gold);
    width:fit-content;
    border:1px solid rgba(239,168,101,0.5);
    padding:3px 8px;
  }#amis-agency .tc-name{
    font-size:var(--fs-body);
    font-weight:500;
    color:var(--ivory);
    line-height:1.3;
  }#amis-agency .tc-action{
    color:rgba(231,220,205,0.7);
    margin-top:auto;
  }/* ---------- Success modal ---------- */#amis-agency .modal-overlay{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(42,38,34,0.78);
    z-index:1000;
    align-items:center;
    justify-content:center;
    padding:20px;
    overflow-y:auto;
  }#amis-agency .modal-overlay.visible{ display:flex; }#amis-agency .modal-card{
    position:relative;
    background:var(--ivory);
    max-width:500px;
    width:100%;
    max-height:90dvh;
    overflow-y:auto;
    padding:clamp(30px,6vw,48px) clamp(22px,5vw,44px) clamp(26px,5vw,40px);
    text-align:center;
    box-shadow:0 20px 60px rgba(42,38,34,0.4);
    border-top:2px solid transparent;
    border-image:var(--metallic-shift) 1;
    animation:modalIn .3s ease;
  }@keyframes modalIn{
    from{ opacity:0; transform:translateY(12px) scale(0.98); }
    to{ opacity:1; transform:translateY(0) scale(1); }
  }#amis-agency .modal-check{
    color:var(--ink);
    margin:0 auto 22px;
    width:56px;
  }#amis-agency .modal-eyebrow{
    color:var(--bronze-text);
    margin:0 0 12px;
  }#amis-agency .modal-title{
    font-family:var(--ff-display);
    font-weight:400;
    font-size:var(--fs-sub);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    color:var(--ink);
    margin:0 0 18px;
  }#amis-agency .modal-body{
    font-size:var(--fs-body);
    font-weight:300;
    line-height:1.5;
    color:var(--ink);
    margin:0 0 14px;
  }#amis-agency .modal-body strong{font-weight:500;}#amis-agency .modal-note{
    font-size:var(--fs-micro);
    font-weight:400;
    line-height:1.5;
    color:var(--ink);
    background:var(--sand);
    border-left:2px solid var(--bronze);
    padding:12px 16px;
    margin:6px 0 8px;
    text-align:left;
  }#amis-agency .modal-footnote{
    font-size:var(--fs-micro);
    font-weight:300;
    color:var(--stone-text);
    margin:20px 0 24px;
  }#amis-agency .modal-close-btn{
    font-family:var(--ff-body);
    font-size:var(--fs-cta-sm);
    font-weight:500;
    letter-spacing:var(--track-cta);
    line-height:var(--lh-cta);
    text-transform:uppercase;
    background:var(--ink);
    color:var(--ivory);
    border:none;
    padding:16px 32px;
    min-height:48px;
    width:100%;
    max-width:240px;
    cursor:pointer;
    transition:background-color .2s ease, color .2s ease;
  }#amis-agency .modal-close-btn:hover{ background:var(--gold); color:var(--ink); }/* ---------- Final closed state ---------- */#amis-agency .closed-state{
    display:none;
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:100vh;
    min-height:100dvh;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:linear-gradient(180deg,var(--ink) 0%, var(--ink-deep) 100%);
    text-align:center;
    padding:24px;
  }#amis-agency .closed-state.visible{ display:flex; }#amis-agency .closed-state::after{
    content:"";
    position:absolute;
    inset:0;
    background-image:var(--pattern-on-ink);
    background-size:46.7px 48.0px;
    -webkit-mask-image:radial-gradient(ellipse at center,transparent 25%,#000 80%);
            mask-image:radial-gradient(ellipse at center,transparent 25%,#000 80%);
    pointer-events:none;
    z-index:-1;
  }#amis-agency .closed-state .apex-notch{
    right:-4%;
    bottom:-6%;
    width:min(60vw,560px);
    opacity:.14;
  }#amis-agency .closed-mark{
    --logo-w:clamp(120px,40vw,200px);
    width:var(--logo-w);
    height:auto;
    display:block;
    margin:0 auto calc(var(--logo-w) * 0.272);
  }#amis-agency .closed-text{
    font-family:var(--ff-display);
    font-weight:400;
    font-size:var(--fs-sub);
    line-height:var(--lh-display);
    letter-spacing:var(--track-display);
    color:var(--ivory);
    margin:0 0 12px;
  }#amis-agency .closed-subtext{
    font-size:var(--fs-micro);
    font-weight:300;
    color:rgba(231,220,205,0.66);
    margin:0;
  }#amis-agency :focus-visible{outline:2px solid var(--bronze); outline-offset:2px;}@media print{#amis-agency .directory,#amis-agency .template-panel,#amis-agency .submit-row,#amis-agency .skip-link,#amis-agency .modal-overlay,#amis-agency .closed-state,#amis-agency .apex-notch{display:none !important;}#amis-agency{background:#fff; color:#000;}#amis-agency .ar-wrap{display:block; min-height:0;}#amis-agency main{max-width:none; padding:12mm 0 0; margin:0;}#amis-agency main::before{display:none;}#amis-agency .ar-field,#amis-agency .textrow input,#amis-agency .textrow select{background:#fff;}#amis-agency .ar-field{break-inside:avoid; box-shadow:none;}
  }@media (prefers-reduced-motion:reduce){#amis-agency *{animation-duration:.01ms !important; transition-duration:.01ms !important;}#amis-agency .ar-field:hover,#amis-agency .submit-btn:hover{transform:none;}
  }

/* Romie Medium (500), used by the registration app; 300 and 400 come from the site's own font files (home.css) */
@font-face{font-family:"Romie";src:url("../fonts/Romie-Medium.woff") format("woff");font-weight:500;font-style:normal;font-display:swap}

/* Inside the site: the brown glass header (home.css, header-glass.js) sits on top, as on every page. The app runs up behind it (no
   ivory gap above the dark directory rail): the rail and the form each keep the header's room as a clear top border, so their
   contents sit where they did. */
.amis-agency .head{background:transparent;color:var(--ivory);box-shadow:none}
.amis-agency{--headroom:88px}
@media (max-width:767px){.amis-agency{--headroom:68px}}
.amis-agency #amis-agency{padding-top:0;overflow-x:clip}
.amis-agency #amis-agency .directory{border-top:var(--headroom) solid transparent;background-origin:border-box}
@media (min-width:1024px){
	.amis-agency #amis-agency .directory{top:0;height:100vh;height:100dvh}
	.amis-agency #amis-agency .ar-wrap>main{border-top:var(--headroom) solid transparent}
}
/* the site header carries the AMIS wordmark: the rail's own logo would repeat it */
.amis-agency #amis-agency .directory > .logo{display:none}
/* the AMIS A as on the home page hero: fills its frame, stands on the bottom edge, brown with a Screen blend at 77% */
.amis-agency #amis-agency .apex-a{position:absolute;inset:0;width:100%;height:100%;fill:#392921;mix-blend-mode:screen;opacity:.77;pointer-events:none}
.amis-agency #amis-agency .closed-state{isolation:isolate;overflow:hidden}
.amis-agency #amis-agency .closed-state .apex-a{z-index:-1}
@media print{.amis-agency #amis-agency .apex-a{display:none}}
/* phones: the document rows stack, so the text block's 240 px flex-basis became a 240 px height (empty space under every row;
   on the live page too); let it take its content's height */
@media (max-width:560px){.amis-agency #amis-agency .field-info{flex-basis:auto}}
/* on the live page the theme's base styles gave form controls and paragraphs these; kept at the lowest weight so the app's own rules win */
#amis-agency :where(input,select,textarea,button){font-family:inherit;font-size:1rem;line-height:1.5}
#amis-agency :where(select){display:block}
#amis-agency :where(p){margin-block:0 .9rem}
