/* Vbook Studio brand layer: loaded last on every page outside the home page (invitations, editor, sign-in, account,
   photographers, policies, not found) so they share the home page's header, footer, colours, buttons and paper.
   Page layouts stay in their own stylesheets. */
:root{
  /* the old maroon accent becomes deep bronze; gold stays gold */
  --maroon:#7a5326; --maroon-2:#94683a;
  --night:#120a06; --gold-hi:#f3dcae;
  /* light pages: a clean warm white, white cards, soft neutral lines */
  --paper:#f7f6f3; --paper-2:#efede8; --card:#ffffff;
  --line:rgba(28,25,23,.1); --line-2:rgba(28,25,23,.18);
  --ink:#1c1917; --ink-2:#57534e; --ink-3:#8a817a;
}

/* ---------- one clean light background for every light page ---------- */
body{background:#f7f6f3}
a{color:#7a5326}
.display em,.h2 em,.lead em{color:#9a6b30;font-weight:300}
::selection{background:#ecd3a5;color:#1d120b}

/* ---------- header: the same slim dark bar and menu on every page ---------- */
.top{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:16px;
     padding:10px clamp(16px,4vw,48px);min-height:66px;background:rgba(18,10,6,.94);border-bottom:1px solid rgba(216,178,118,.18);
     backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.vs-logo{display:inline-flex;flex-direction:column;align-items:center;gap:5px;text-decoration:none;color:#f3dcae}
.vs-logo svg{display:block;width:104px;height:auto;aspect-ratio:166/44;overflow:visible}
.vs-logo small{display:block;font:300 8.5px/1 'Jost','Helvetica Neue',Arial,sans-serif;letter-spacing:.5em;padding-left:.5em;text-transform:uppercase;color:#ecd3a5}
.top .nav,.top .top-meta{display:flex;align-items:center;gap:clamp(18px,2.4vw,40px)}
.top .nav a,.top .top-meta a,.top .top-meta,.top .lock{font:400 11px/1 'Jost','Helvetica Neue',Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase;color:rgba(250,240,224,.9);text-decoration:none;white-space:nowrap}
.top .nav a:hover,.top .top-meta a:hover{color:#f3dcae}
/* sign in: the quiet outlined button, as on the home page */
.top .acct-slot > a,.top .nav-signin{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:0 20px;border-radius:40px;
     box-shadow:inset 0 0 0 1px rgba(232,201,143,.55);color:#f6ead6 !important;font:500 11px/1 'Jost',Arial,sans-serif;letter-spacing:.2em}
.top .acct-slot > a:hover{background:rgba(232,201,143,.14)}
.top .acct-slot a,.top .acct-slot button{color:rgba(246,234,214,.9)}
.m-menu{display:none;position:relative}
.m-menu summary{list-style:none;cursor:pointer;width:40px;height:40px;display:grid;place-items:center;color:#f6ead6}
.m-menu summary::-webkit-details-marker{display:none}
.m-menu summary svg{width:20px;height:20px}
.m-menu nav{position:absolute;right:0;top:48px;min-width:230px;display:grid;padding:10px 0;background:#1a100a;border:1px solid rgba(216,178,118,.25);box-shadow:0 30px 60px -20px rgba(0,0,0,.8)}
.top .m-menu nav a{padding:13px 22px;text-transform:none;letter-spacing:0;white-space:normal;font:400 20px/1.2 'Cormorant Garamond',Georgia,serif;color:#f6ead6;text-decoration:none}
.top .m-menu nav a:hover{color:#f3dcae;background:rgba(216,178,118,.06)}
@media (max-width:980px){ .top .nav > a{display:none} .m-menu{display:block} .top .nav{gap:12px} }
@media (max-width:480px){ .vs-logo svg{width:92px} .top .acct-slot > a{padding:0 14px;letter-spacing:.14em} }

/* ---------- buttons: one style everywhere: a flat gold rectangle, and a thin outlined one ---------- */
.btn{border-radius:0;min-height:54px;padding:0 32px;color:#1a0f08;background:#dcbb84;box-shadow:none;
     font:500 11px/1 'Jost','Helvetica Neue',Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase}
.btn::before{display:none}
.btn::after{background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent)}
.btn:hover{background:#ecd3a5;box-shadow:none;transform:none}
.btn .price{border-left-color:rgba(42,26,14,.25)}
.btn.small{min-height:42px;padding:0 20px}
.btn.gold{color:#1a0f08;background:#dcbb84}
.btn.ghost{color:#1d120b;background:transparent;box-shadow:inset 0 0 0 1px rgba(141,99,48,.6)}
.btn.ghost:hover{background:rgba(141,99,48,.08);box-shadow:inset 0 0 0 1px #8d6330;color:#1d120b}
.btn.on-dark,.btn.ghost.on-dark{color:#f3e7d3;background:transparent;box-shadow:inset 0 0 0 1px rgba(216,178,118,.55)}
.btn.on-dark:hover{background:rgba(216,178,118,.1)}

/* ---------- footer: the home page's footer, on every page ---------- */
.foot-bar{background:#0f0805;color:rgba(246,234,214,.7);padding:clamp(56px,6vw,84px) clamp(16px,4vw,48px) 30px}
.foot-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px}
.foot-brand .vs-logo svg{width:132px}
.foot-brand p{margin-top:20px;max-width:30ch;font:italic 400 17px/1.55 'Cormorant Garamond',Georgia,serif;color:rgba(246,234,214,.62)}
.foot-bar nav{display:flex;flex-direction:column;gap:12px}
.foot-bar h4{font:500 10.5px/1 'Jost',Arial,sans-serif;letter-spacing:.26em;text-transform:uppercase;color:#d8b276;margin-bottom:8px}
.foot-bar nav a{font:400 15px/1.3 'Jost',Arial,sans-serif;color:rgba(246,234,214,.8);width:fit-content;overflow-wrap:anywhere;text-decoration:none}
.foot-bar nav a:hover{color:#f3dcae}
.foot-bar .copy{max-width:1180px;margin:56px auto 0;padding-top:22px;border-top:1px solid rgba(216,178,118,.14);display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;
                font:400 12.5px/1.6 'Jost',Arial,sans-serif;letter-spacing:.06em;color:rgba(246,234,214,.58)}
@media (max-width:860px){ .foot-grid{grid-template-columns:1fr 1fr} .foot-brand{grid-column:1/-1} }

/* ---------- phones (Android and iPhone): finger-sized taps, readable small type, no zoom on fields ---------- */
@media (max-width:760px){
  html .foot-bar nav{gap:0}
  html .foot-bar nav a{display:block;padding:10px 0;min-height:42px}
  html .foot-bar h4{font-size:11.5px;margin-bottom:4px}
  html .btn.small{font-size:11.5px;min-height:44px}
  html .eyebrow{font-size:11.5px}
  html .when,html .receipt h3,html .sec-title,html .field .l,html .doc-head .updated,html .contact-card h3{font-size:11.5px}
  html .linkrow input{font-size:16px}                                   /* iPhone zooms into any field under 16px */
  html .linkrow button{font-size:11.5px;min-width:72px}
  html .mine h2{font-size:11.5px}
  html .mine li a{display:inline-flex;align-items:center;min-height:42px;padding:0 6px;font-size:11.5px}
  html .live{font-size:11px}
  html .stage-cap button{font-size:11.5px;padding:14px 2px 6px}
  html .linkrow + .acts > .btn{flex:1 1 auto}                     /* account: order buttons fill each row evenly */
}

.contact-card a{overflow-wrap:anywhere;word-break:normal}
.contact-card:has(a[href^="mailto"]){grid-column:1/-1}
