:root {
  --c-maroon: #264a3b; --c-rose: #c9a227; --c-rose2: #3d6351; --c-maroon-l: #2b5243; --c-maroon-d: #1e3a2e; --c-ink-m: #6b6b6b; --c-rose-1: #e6d089; --c-rose-2: #efe2b4; --c-pagebg-l: #fefefc;
  --c-pagebg: #f6f4ea; --c-circle: #e4eadb; --c-band: #e9efe0; --c-ink: #223c31;
  --f-head: 'Playfair Display', serif; --f-body: 'Poppins', sans-serif;
}
/* ============ App (form) styling ============ */
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: var(--f-body); background: #f4f5ec; color: var(--c-ink); }
.app-header { display: flex; align-items: center; gap: 14px; padding: 18px 20px; background: var(--c-maroon); color: #fff; }
.app-logo { height: 52px; width: auto; background:#fff; border-radius: 12px; padding: 5px; }
.app-header h1 { font-size: 20px; font-weight: 600; }
.app-header p { font-size: 13px; opacity: .85; }
.steps { display: flex; gap: 6px; padding: 10px; background: #fff; position: sticky; top: 0; z-index: 5; box-shadow: 0 2px 8px rgba(36,71,58,.08); overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.steps::-webkit-scrollbar { display: none; }
.steps { -webkit-mask-image: linear-gradient(to right, #000 0%, #000 calc(100% - 34px), transparent 100%); mask-image: linear-gradient(to right, #000 0%, #000 calc(100% - 34px), transparent 100%); }
.step-btn { flex: 1; min-width: 90px; padding: 12px 8px; font-size: 15px; font-family: inherit; border: 2px solid #dde5d0; background: #fff; color: #2f5a48; border-radius: 10px; cursor: pointer; font-weight: 500; white-space: nowrap; }
.step-btn.active { background: var(--c-maroon); color: #fff; border-color: var(--c-maroon); }
main { max-width: 780px; margin: 0 auto; padding: 18px 14px 60px; }
.step-panel h2 { font-size: 19px; margin: 18px 0 12px; }
.step-panel h3 { font-size: 16px; margin: 22px 0 10px; }
.hint { font-size: 13px; color: #7d8a72; margin-bottom: 10px; }
.field { margin-bottom: 14px; }
.field label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 6px; }
.field textarea { width: 100%; box-sizing: border-box; font-size: 17px; font-family: inherit; padding: 14px 14px; border: 2px solid #dde5d0; border-radius: 12px; background: #fff; color: #333; resize: vertical; }
.field textarea:focus { outline: none; border-color: var(--c-rose); }
.field input { width: 100%; font-size: 17px; font-family: inherit; padding: 14px 14px; border: 2px solid #dde5d0; border-radius: 12px; background: #fff; color: #333; }
.field input:focus { outline: none; border-color: var(--c-rose); }
.search { width: 100%; font-size: 16px; font-family: inherit; padding: 12px 14px; border: 2px solid #dde5d0; border-radius: 12px; margin-bottom: 12px; }
.next-btn, .generate-btn { width: 100%; padding: 16px; font-size: 18px; font-weight: 600; font-family: inherit; border: none; border-radius: 12px; background: var(--c-maroon); color: #fff; cursor: pointer; margin-top: 18px; }
.generate-btn { background: var(--c-rose); font-size: 20px; }
.small-btn { padding: 12px 18px; font-size: 15px; font-family: inherit; border: none; border-radius: 10px; background: var(--c-rose); color: #fff; cursor: pointer; font-weight: 500; }
.small-btn.danger { background: #c0392b; }
.add-row { display: flex; gap: 8px; flex-wrap: wrap; }
.add-row input { flex: 1; min-width: 140px; font-size: 15px; font-family: inherit; padding: 12px; border: 2px solid #dde5d0; border-radius: 10px; }
.svc-item { background: #fff; border: 2px solid #e2e8d5; border-radius: 12px; padding: 12px 14px; margin-bottom: 8px; }
.svc-item.on { border-color: var(--c-rose); background: #eef2e5; }
.svc-head { display: flex; align-items: center; gap: 12px; cursor: pointer; }
.svc-head input[type=checkbox] { width: 26px; height: 26px; accent-color: var(--c-rose); flex: none; cursor: pointer; }
.svc-head .svc-name { font-size: 16px; font-weight: 500; }
.svc-fields { display: flex; gap: 10px; margin-top: 10px; padding-left: 38px; flex-wrap: wrap; }
.svc-item.on .svc-fields { display: flex; } /* qty-size-always-v18 */
.svc-fields label { font-size: 12px; color: #7d8a72; display: block; margin-bottom: 4px; }
.svc-fields input { font-size: 15px; font-family: inherit; padding: 10px; border: 2px solid #dde5d0; border-radius: 8px; width: 130px; }
.svc-fields input.rate { width: 100%; min-width: 220px; flex: 1; }
.summary { background: #fff; border-radius: 12px; padding: 16px; font-size: 15px; line-height: 1.7; border: 2px solid #e2e8d5; }
.hidden { display: none; }
hr { border: none; border-top: 1px solid #dde5d0; margin: 26px 0; }

/* ============ PDF page styling (A4 @96dpi = 794x1123) — sage + shiny gold ============ */
#pdfStage { position: fixed; left: -9999px; top: 0; }
.p-page { width: 794px; height: 1123px; position: relative; overflow: hidden; background: var(--c-pagebg); font-family: var(--f-body); }
.gtxt { display: block; }
.gbar { height: 4px; background: linear-gradient(90deg, #7a5c14 0%, #c9a227 22%, #f6e27a 45%, #fff6c8 50%, #f6e27a 55%, #c9a227 78%, #7a5c14 100%); }
.dias { display: flex; justify-content: center; gap: 26px; }
.dia { width: 13px; height: 13px; transform: rotate(45deg); background: linear-gradient(135deg, #f6e27a 0%, #c9a227 45%, #8a6318 100%); box-shadow: 0 0 6px rgba(201,162,39,.45); }
.bcirc { position: absolute; border-radius: 50%; background: rgba(255,255,255,.045); }

/* --- arch frame (rounded top, metallic gold border) --- */
.arch { width: 250px; height: 330px; padding: 5px; border-radius: 125px 125px 16px 16px; background: linear-gradient(160deg, #8a6318 0%, #c9a227 30%, #f6e27a 48%, #fff8d2 52%, #e9c96a 58%, #a8801c 78%, #6d5112 100%); box-shadow: 0 10px 30px rgba(0,0,0,.28); }
.arch-in { width: 100%; height: 100%; border-radius: 120px 120px 11px 11px; background: linear-gradient(170deg, var(--c-maroon-l) 0%, var(--c-maroon-d) 55%, var(--c-maroon-d) 100%); display: flex; align-items: center; justify-content: center; }
.arch-in img { width: 68%; }

/* --- Cover --- */
.p-cover { background: var(--c-pagebg); }
.cv-left { position: absolute; left: 0; top: 0; bottom: 0; width: 305px; background: linear-gradient(170deg, var(--c-maroon-l) 0%, var(--c-maroon) 50%, var(--c-maroon-d) 100%); display: flex; flex-direction: column; align-items: center; }
.cv-arch { margin-top: 130px; }
.cv-left .dias { margin-top: 34px; }
.cv-brand { margin-top: 22px; }
.cv-leftfoot { position: absolute; bottom: 44px; width: 100%; text-align: center; color: #cfddc9; font-size: 12px; line-height: 1.9; letter-spacing: .4px; }
.cv-right { position: absolute; left: 305px; right: 0; top: 0; bottom: 0; }
.cv-no { position: absolute; top: 66px; right: 64px; }
.cv-title.cv-title-sm { font-size: 46px; }
.cv-title.cv-title-ord { font-size: 40px; }
.cv-title { position: absolute; top: 148px; left: 72px; width: 340px; font-family: var(--f-head); font-size: 64px; font-weight: 500; line-height: 1.12; color: var(--c-maroon); }
.cv-bar { position: absolute; top: 330px; left: 72px; width: 130px; }
.cv-sub { position: absolute; top: 352px; left: 72px; font-family: var(--f-head); font-style: italic; font-size: 21px; color: #6c7d6d; }
.cv-card { position: absolute; left: 64px; right: 56px; bottom: 72px; background: #eef1e2; border-radius: 6px; padding: 26px 32px 30px; }
.cv-cardbar { position: absolute; left: 0; top: 0; bottom: 0; width: 6px; border-radius: 6px 0 0 6px; background: linear-gradient(180deg, #7a5c14 0%, #c9a227 25%, #f6e27a 50%, #c9a227 75%, #7a5c14 100%); }
.cv-kicker { margin-bottom: 10px; }
.p-cover .cname { font-family: var(--f-head); font-size: 33px; color: var(--c-maroon); margin-bottom: 8px; font-weight: 600; }
.p-cover .cline { font-size: 16.5px; color: #3c4f43; line-height: 1.55; font-weight: 500; }
.p-cover .pill .gtxt { position: relative; z-index: 2; }
.p-cover .pill { display: inline-block; margin-top: 16px; padding: 10px 26px 12px; border-radius: 999px; background: linear-gradient(120deg, var(--c-maroon-l), var(--c-maroon-d)); box-shadow: 0 4px 12px rgba(30,58,46,.35); }

/* --- Inner pages --- */
.p-inner .band { position: absolute; top: 0; left: 0; right: 0; height: 246px; background: linear-gradient(165deg, var(--c-maroon-l) 0%, var(--c-maroon) 55%, var(--c-maroon-d) 100%); overflow: hidden; }
.p-inner .bandline { position: absolute; top: 246px; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, #7a5c14 0%, #c9a227 22%, #f6e27a 48%, #fff6c8 50%, #f6e27a 52%, #c9a227 78%, #7a5c14 100%); }
.p-inner .head { position: relative; padding: 52px 64px 0; display: flex; align-items: flex-start; gap: 28px; }
.p-inner .head img { width: 118px; }
.p-inner .headtxt { padding-top: 34px; }
.p-inner .kicker { margin-bottom: 8px; }
.p-inner .ptitle { font-family: var(--f-head); font-style: italic; font-size: 46px; color: #ffffff; font-weight: 500; line-height: 1.12; }
.p-inner .prule { width: 96px; margin-top: 14px; }
.p-inner .cards { position: relative; display: flex; gap: 14px; margin: 92px 64px 0; }
.p-inner .icard { flex: 1; position: relative; background: #fff; border-radius: 6px; padding: 13px 14px 13px 20px; box-shadow: 0 3px 12px rgba(38,74,59,.10); }
.p-inner .icbar { position: absolute; left: 0; top: 0; bottom: 0; width: 5px; border-radius: 6px 0 0 6px; background: linear-gradient(180deg, #7a5c14 0%, #c9a227 25%, #f6e27a 50%, #c9a227 75%, #7a5c14 100%); }
.p-inner .iclabel { margin-bottom: 5px; }
.p-inner .icard .txt { font-size: 14px; color: #2e4034; line-height: 1.55; font-weight: 600; }
.p-inner table { width: calc(100% - 128px); margin: 22px 64px 0; border-collapse: collapse; }
.p-inner thead th { background: var(--c-maroon); color: #efd478; font-size: 13.5px; letter-spacing: 2px; font-weight: 600; text-align: left; padding: 11px 14px; }
.p-inner tbody td { font-size: 14.5px; color: #2e4034; padding: 8px 14px; font-weight: 500; }
.p-inner tbody tr:nth-child(even) td { background: #edf1e3; }
.p-inner tbody tr:nth-child(odd) td { background: #fff; }
.p-inner .numc { display: inline-flex; width: 24px; height: 24px; border-radius: 50%; background: var(--c-maroon); color: #fff; align-items: center; justify-content: center; font-size: 11.5px; font-weight: 500; }
.p-inner .note { margin: 18px 64px 0; display: flex; justify-content: center; }
.p-foot { position: absolute; bottom: 30px; left: 64px; right: 64px; padding-top: 12px; display: flex; justify-content: space-between; align-items: flex-start; }
.p-foot .footline { position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, #7a5c14 0%, #c9a227 30%, #f6e27a 50%, #c9a227 70%, #7a5c14 100%); }
.p-foot .fl { font-size: 13.5px; color: #41543f; line-height: 1.5; font-weight: 500; }
.p-foot .fl .co { color: #5c6d62; font-size: 13px; }
.p-foot .fr { font-size: 12.5px; color: #97721a; font-weight: 500; }

/* --- Agreement --- */
.ag-parties { margin: 102px 64px 0; }
.p-inner .ag-parties + .cards { margin-top: 10px; }
.ag-h { margin: 26px 64px 0; text-align: center; }
.ag-h span { font-family: var(--f-head); font-size: 26px; color: var(--c-maroon); font-weight: 600; }
.ag-hbar { width: 90px; margin: 8px auto 0; }
.ag-list { margin: 18px 64px 0; }
.ag-item { display: flex; align-items: flex-start; gap: 14px; padding: 7px 0; }
.ag-dia { width: 9px; height: 9px; margin: 7px 0 0 4px; flex: none; }
.ag-txt { font-size: 16px; color: #2e4034; line-height: 1.5; font-weight: 500; }
.ag-meta { color: #55665c; font-size: 14px; }
.ag-refnote { margin: 92px 64px 0; display: flex; justify-content: center; }
.signblk { margin: 26px 64px 0; text-align: right; }
.signblk .sb1 { font-size: 13.5px; color: #41543f; font-weight: 500; }
.signblk .sb2 { font-family: var(--f-head); font-size: 20px; color: var(--c-maroon); font-weight: 600; margin-top: 4px; }
.signblk .sb3 { font-size: 13.5px; color: #41543f; font-weight: 500; }

/* --- Back cover --- */
.p-back { background: linear-gradient(165deg, var(--c-maroon-l) 0%, var(--c-maroon) 50%, var(--c-maroon-d) 100%); }
.bk-arch { position: absolute; top: 118px; left: 272px; }
.bk-thanks { position: absolute; top: 512px; width: 100%; text-align: center; font-family: var(--f-head); font-style: italic; font-size: 58px; color: #ffffff; font-weight: 500; }
.bk-bar { position: absolute; top: 610px; left: 347px; width: 100px; }
.bk-msg { position: absolute; top: 640px; width: 100%; text-align: center; font-size: 18px; color: #eef4ea; line-height: 1.75; font-weight: 400; }
.p-back .dias { position: absolute; top: 742px; left: 0; right: 0; }
.bk-lines { position: absolute; bottom: 92px; width: 100%; display: flex; flex-direction: column; align-items: center; gap: 10px; }

/* --- Reference images: form UI --- */
.layout-pick { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 8px; }
.layout-opt { flex: 1; min-width: 110px; background: #fff; border: 2px solid #dde5d0; border-radius: 12px; padding: 12px; text-align: center; cursor: pointer; display: block; }
.layout-opt input { display: none; }
.layout-opt span { display: block; font-size: 16px; font-weight: 600; color: #2f5a48; }
.layout-opt small { color: #7d8a72; font-size: 12px; }
.layout-opt.sel { border-color: var(--c-rose); background: #eef2e5; }
.add-row select { font-size: 16px; font-family: inherit; padding: 12px; border: 2px solid #dde5d0; border-radius: 10px; background: #fff; flex: 1; min-width: 150px; }
.thumbs { margin-top: 14px; }
.thumb { display: flex; gap: 12px; background: #fff; border: 2px solid #e2e8d5; border-radius: 12px; padding: 10px; margin-bottom: 8px; align-items: center; }
.thumb img { width: 84px; height: 64px; object-fit: cover; border-radius: 8px; flex: none; }
.thumb .cap-in { flex: 1; font-size: 15px; font-family: inherit; padding: 10px; border: 2px solid #dde5d0; border-radius: 8px; }

/* --- Reference images: PDF pages --- */
.ref-grid { position: relative; display: grid; gap: 14px; margin: 106px 64px 0; }
.ref-grid .cell { display: flex; flex-direction: column; overflow: hidden; }
.ref-grid .cell .ph { width: 100%; height: calc(100% - 24px); flex: none; object-fit: cover; border-radius: 4px; }
.ref-grid .cell .cap { font-size: 13px; color: #5d6d62; text-align: center; padding-top: 6px; flex: none; height: 22px; }
.ref-collage { grid-template-columns: repeat(6, 1fr); grid-auto-rows: 210px; }
.ref-collage .cell:nth-child(6n+1) { grid-column: span 3; grid-row: span 2; }
.ref-collage .cell:nth-child(6n+2), .ref-collage .cell:nth-child(6n+3) { grid-column: span 3; }
.ref-collage .cell:nth-child(6n+4) { grid-column: span 2; }
.ref-collage .cell:nth-child(6n+5) { grid-column: span 4; }
.ref-collage .cell:nth-child(6n+6) { grid-column: span 6; }
.ref-3up { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 560px; }
.ref-2up { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 330px; }
.ref-note { margin: 14px 64px 0; text-align: center; position: relative; }
.ref-n { grid-template-columns: repeat(6, 1fr); grid-auto-rows: 320px; }
.ref-n.n1 .cell { grid-column: span 6; grid-row: span 2; }
.ref-n.n2 .cell { grid-column: span 6; }
.ref-n.n3 .cell:nth-child(1) { grid-column: span 6; }
.ref-n.n3 .cell:nth-child(n+2) { grid-column: span 3; }
.ref-n.n4 .cell { grid-column: span 3; }
.ref-n.n5 .cell:nth-child(-n+2) { grid-column: span 3; }
.ref-n.n5 .cell:nth-child(n+3) { grid-column: span 2; }
.ref-n.n6 .cell { grid-column: span 2; }
.ref-grid4 { grid-template-columns: repeat(3, 1fr); grid-auto-rows: 330px; }

/* ============ Premium polish ============ */
body { background: linear-gradient(180deg, #e7edda 0%, #f4f5ec 260px, #f4f5ec 100%); }
.app-header { background: linear-gradient(120deg, #1e3a2e 0%, var(--c-maroon) 55%, #35604c 100%); border-bottom: 3px solid #c9a227; box-shadow: 0 4px 14px rgba(36,71,58,.25); }
.app-header h1 { font-family: var(--f-head); font-style: italic; font-size: 24px; }
.step-panel { background: #fff; border-radius: 18px; padding: 20px 16px 24px; box-shadow: 0 6px 24px rgba(36,71,58,.08); border: 1px solid #e2e7d6; }
.step-panel h2 { font-family: var(--f-head); font-size: 23px; color: #1e3a2e; border-bottom: 2px solid #e2e8d5; padding-bottom: 8px; }
.step-panel h3 { color: #2f5a48; }
.field input, .search, .add-row input, .add-row select { transition: border-color .15s, box-shadow .15s; }
.field input:focus, .search:focus, .add-row input:focus { outline: none; border-color: var(--c-rose); box-shadow: 0 0 0 3px rgba(176,138,30,.15); }
.next-btn { background: linear-gradient(120deg, var(--c-maroon), #35604c); box-shadow: 0 4px 14px rgba(36,71,58,.3); letter-spacing: .3px; }
.generate-btn { background: linear-gradient(115deg, #8a6318 0%, #c9a227 30%, #f6e27a 50%, #c9a227 70%, #8a6318 100%); color: #1e3a2e; box-shadow: 0 4px 16px rgba(176,138,30,.45); letter-spacing: .3px; text-shadow: 0 1px 0 rgba(255,246,200,.5); }
.next-btn:active, .generate-btn:active, .small-btn:active { transform: translateY(1px); }
.step-btn { border-radius: 999px; }
.summary { border: 1px solid #e2e8d5; box-shadow: 0 3px 12px rgba(36,71,58,.06); }

/* --- live preview --- */
#previewBtn { position: fixed; right: 16px; bottom: 16px; z-index: 20; padding: 14px 20px; font-size: 16px; font-weight: 600; font-family: inherit; border: none; border-radius: 999px; background: linear-gradient(115deg, #8a6318 0%, #c9a227 30%, #f6e27a 50%, #c9a227 70%, #8a6318 100%); color: #1e3a2e; cursor: pointer; box-shadow: 0 6px 18px rgba(36,71,58,.35); }
#previewOverlay { position: fixed; inset: 0; z-index: 30; background: rgba(24,46,36,.55); display: flex; align-items: center; justify-content: center; padding: 14px; }
#previewOverlay.hidden { display: none; }
.pv-card { background: #f4f5ec; border-radius: 16px; width: 100%; max-width: 860px; max-height: 92vh; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 12px 40px rgba(0,0,0,.3); }
.pv-head { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; background: var(--c-maroon); color: #fff; font-weight: 500; font-size: 15px; }
.pv-head button { background: var(--c-rose); border: none; color: #fff; font-family: inherit; font-size: 14px; padding: 8px 14px; border-radius: 8px; cursor: pointer; }
.pv-scroll { overflow: auto; padding: 14px; }
#pvScale { transform-origin: top left; }
#pvInner { width: 794px; }
#pvInner .pv-pg { width: 794px; height: 1123px; margin: 0 0 18px; position: relative; overflow: hidden; box-shadow: 0 2px 14px rgba(0,0,0,.25); }

.p-inner .head img.badged { background: #fff; border-radius: 14px; padding: 6px; }

/* --- login gate --- */
#loginGate { position: fixed; inset: 0; z-index: 50; background: linear-gradient(180deg, #e7edda 0%, #f4f5ec 100%); display: flex; align-items: flex-start; justify-content: center; padding: 40px 16px; overflow: auto; }
#loginGate.hidden { display: none; }
#userChip { cursor: pointer; }

.retry-save-btn{margin-left:8px;padding:3px 14px;border:none;border-radius:999px;background:linear-gradient(135deg,#264a3b,#c9a227);color:#fff;font:500 12px Poppins,sans-serif;cursor:pointer;box-shadow:0 2px 6px rgba(36,71,58,.3)}
.retry-save-btn:hover{filter:brightness(1.1)}

@media (max-width:640px){
  .app-header{flex-wrap:wrap;gap:8px 12px;padding:14px 16px}
  .app-header > div{flex:1 1 60%;min-width:0}
  .app-header h1{font-size:19px}
  .app-header p{font-size:11.5px}
  #userChip{order:3;flex-basis:100%;font-size:12px;text-align:left;opacity:.95}
  .app-header .backlink{order:2;margin-left:auto}
}

/* --- agreement upgrade: intro, terms, signatures --- */
.ag-intro { margin: 92px 64px 0; font-size: 15.5px; color: #2e4034; line-height: 1.75; text-align: justify; font-weight: 500; }
.ag-intro.sign-note { margin-top: 96px; }
.p-inner .ag-parties { margin-top: 26px; text-align: center; }
.term-list { margin: 96px 64px 0; }
.term-item { display: flex; align-items: flex-start; gap: 14px; padding: 10px 0; border-bottom: 1px solid #e2e7d8; }
.term-item:last-child { border-bottom: none; }
.term-item .numc { margin-top: 2px; flex: none; }
.term-txt { font-size: 15.5px; color: #2e4034; line-height: 1.65; font-weight: 500; }
.sign-grid { display: flex; gap: 22px; margin: 28px 64px 0; }
.sign-col { flex: 1; background: #fff; border-radius: 8px; padding: 18px 20px 22px; box-shadow: 0 3px 12px rgba(38,74,59,.10); position: relative; }
.sign-collab { text-align: center; }
.sig-space { height: 60px; }
.sig-line { display: flex; align-items: flex-end; gap: 10px; margin-top: 14px; }
.sig-lab { font-size: 13px; color: #4a5c50; letter-spacing: 1px; text-transform: uppercase; flex: none; font-weight: 600; }
.sig-fill { flex: 1; border-bottom: 1.5px solid var(--c-maroon); min-height: 20px; font-size: 15px; color: #1d332a; font-weight: 700; padding: 0 4px 2px; }
.wit-grid { display: flex; gap: 22px; margin: 22px 64px 0; }
.wit-row { flex: 1; background: #fff; border-radius: 8px; padding: 14px 20px 18px; box-shadow: 0 3px 12px rgba(38,74,59,.10); }
.wit-lab { text-align: center; margin-bottom: 2px; }

/* --- form: per-agreement wording section (step 5) --- */
#agreeOpts { margin-top: 16px; border: 1px solid #d8dfd2; border-radius: 10px; padding: 14px 16px; background: #fbfaf3; }
#agreeOpts .field { margin-bottom: 10px; }
#agreeOpts label { display: block; font-size: 12.5px; color: #5d6d62; margin-bottom: 4px; }
#agreeOpts input, #agreeOpts textarea { width: 100%; box-sizing: border-box; font: inherit; font-size: 13.5px; padding: 8px 10px; border: 1px solid #cfd8c9; border-radius: 7px; background: #fff; color: #223c31; }
#agreeOpts textarea { resize: vertical; }

/* select all row */
.selall-row { display: flex; gap: 8px; margin: 8px 0 10px; }

/* password show/hide toggle */
.pw-wrap{position:relative}
.pw-wrap input{width:100%;padding-right:40px}
.pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;padding:4px;cursor:pointer;color:#6b7a70;display:flex;align-items:center;justify-content:center}
.pw-eye:hover{color:#264a3b}
.pw-eye:focus-visible{outline:2px solid #264a3b;border-radius:4px}

/* ===== v22: template picker, remember-me, share row ===== */
.remember-row { display: flex; align-items: center; gap: 9px; margin-top: 14px; font-size: 14px; color: var(--c-ink); cursor: pointer; user-select: none; }
.remember-row input { width: 18px; height: 18px; accent-color: var(--c-maroon); cursor: pointer; }
.login-err { color: #a33; min-height: 18px; }
.login-err.show { animation: shake .3s ease; font-weight: 500; }
@keyframes shake { 0%,100%{transform:translateX(0)} 25%{transform:translateX(-5px)} 75%{transform:translateX(5px)} }

.tpl-pick { display: grid; grid-template-columns: repeat(auto-fill, minmax(158px, 1fr)); gap: 10px; margin: 6px 0 4px; }
.tpl-card { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; text-align: left; background: #fff; border: 2px solid #e3e6d4; border-radius: 13px; padding: 12px; cursor: pointer; font-family: inherit; transition: border-color .15s ease, box-shadow .15s ease, transform .12s ease; }
.tpl-card:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(36,71,58,.12); }
.tpl-card.sel { border-color: var(--c-rose); box-shadow: 0 0 0 3px rgba(201,162,39,.18); }
.tpl-sw { width: 100%; height: 44px; border-radius: 9px; border: 1.5px solid; display: flex; align-items: flex-end; gap: 5px; padding: 6px; }
.tpl-sw i { display: block; border-radius: 4px; }
.tpl-sw i:nth-child(1) { width: 34%; height: 16px; }
.tpl-sw i:nth-child(2) { width: 18%; height: 24px; }
.tpl-sw i:nth-child(3) { width: 34%; height: 10px; }
.tpl-nm { font-weight: 600; font-size: 14px; color: var(--c-ink); }
.tpl-tg { font-size: 11.5px; color: #7b8579; line-height: 1.35; }

.share-row { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 12px 0 4px; padding: 12px; background: #eef2e5; border: 1px dashed var(--c-maroon); border-radius: 12px; }
.share-row.hidden { display: none; }
.share-row .small-btn { padding: 10px 16px; font-size: 14px; }
.share-row .small-btn.wa { background: #25d366; color: #fff; }
.share-row .hint { flex-basis: 100%; margin: 0; word-break: break-all; }

/* ---- smoothness pass (v30) ---- */
html { scroll-behavior: smooth; }
* { -webkit-tap-highlight-color: transparent; }
.step-btn, .next-btn, .small-btn, .tpl-card, .doc-opt, .thumb { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease; }
.tpl-card:hover, .doc-opt:hover { transform: translateY(-2px); }
.thumb { transition: transform .18s ease, box-shadow .18s ease, outline-color .18s ease; }
.step-panel { animation: stepIn .25s ease; }
@keyframes stepIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.lib-thumb { cursor: pointer; }
.lib-thumb.sel { outline: 3px solid var(--c-gold, #c9a227); outline-offset: 2px; }
.lib-thumb .lib-tag { font-size: 11.5px; color: #6b5f52; text-align: center; padding: 4px 2px 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ---- mobile layout fixes (v31) ---- */
@media (max-width:640px){
  .app-logo { height: 40px; }
  .app-header { gap: 6px 10px; padding: 12px 14px; }
  .app-header h1 { font-size: 17px; }
  .app-header p { font-size: 11px; }
  .steps { gap: 5px; padding: 8px; }
  .steps .step-btn { padding: 8px 12px; font-size: 12.5px; flex: none; white-space: nowrap; }
  #previewBtn { padding: 10px 16px; font-size: 13.5px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); opacity: .96; }
  main, .wrap, .form-wrap { padding-bottom: 84px; }
}
@media (max-width:380px){
  .app-header h1 { font-size: 15.5px; }
  .steps .step-btn { padding: 7px 10px; font-size: 12px; }
}

/* ================= TEMPLATE LAYOUTS (quotation) ================= */
/* light arch variant for the ivory design */
.arch-lite { width: 230px; height: 300px; padding: 4px; border-radius: 115px 115px 14px 14px; background: linear-gradient(160deg, #8a6318, #c9a227 40%, #f6e27a 50%, #c9a227 60%, #8a6318); }
.arch-lite .arch-in { background: transparent; border-radius: 111px 111px 10px 10px; }
.arch-lite .arch-in img { width: 70%; }

/* ---------- IVORY ARCH ---------- */
.cov-ivory { position: relative; background: #f8f3e4; display: flex; flex-direction: column; align-items: center; }
.cov-ivory .civ-f1 { position: absolute; inset: 26px; border: 3px solid #c9a227; pointer-events: none; }
.cov-ivory .civ-f2 { position: absolute; inset: 36px; border: 1px solid #d9bd6a; pointer-events: none; }
.cov-ivory .civ-kicker { margin-top: 58px; position: relative; }
.cov-ivory .civ-arch { margin-top: 30px; position: relative; }
.cov-ivory .civ-arch .arch { width: 230px; height: 300px; padding: 4px; border-radius: 115px 115px 14px 14px; background: linear-gradient(160deg, #8a6318, #c9a227 40%, #f6e27a 50%, #c9a227 60%, #8a6318); box-shadow: none; }
.cov-ivory .civ-arch .arch-in { background: #f8f3e4; border-radius: 111px 111px 10px 10px; }
.cov-ivory .civ-arch .arch-in img { width: 70%; }
.cov-ivory .civ-title { margin-top: 26px; font-family: var(--f-head); font-size: 44px; color: #2f2c1c; font-weight: 600; }
.cov-ivory .civ-sub { margin-top: 6px; font-family: var(--f-head); font-style: italic; font-size: 17px; color: #6d6647; }
.cov-ivory .civ-love { margin-top: 22px; position: relative; }
.cov-ivory .civ-card { margin-top: 22px; background: #fff; border: 1.5px solid #e2d3a0; border-radius: 10px; padding: 18px 40px; text-align: center; box-shadow: 0 3px 14px rgba(120,100,40,.12); }
.cov-ivory .civ-lab { margin-bottom: 6px; }
.cov-ivory .cname { font-family: var(--f-head); font-size: 26px; color: #2f2c1c; font-weight: 600; }
.cov-ivory .cline { font-size: 14px; color: #5c5636; margin-top: 3px; font-weight: 500; }
.cov-ivory .civ-budget { margin-top: 18px; background: var(--c-maroon); color: #f2d675; font-family: var(--f-head); font-size: 17px; letter-spacing: 1px; padding: 10px 30px; border-radius: 999px; box-shadow: 0 4px 12px rgba(38,74,59,.3); }
.cov-ivory .civ-foot { position: absolute; bottom: 52px; left: 0; right: 0; text-align: center; font-size: 12px; color: #7a7248; letter-spacing: .5px; }

/* inner pages - ivory */
.lay-ivory .p-inner { background: #f8f3e4; }
.lay-ivory .p-inner .band, .lay-ivory .p-inner .bandline { display: none; }
.lay-ivory .p-inner::before { content: ''; position: absolute; inset: 20px; border: 2.5px solid #c9a227; pointer-events: none; }
.lay-ivory .p-inner::after { content: ''; position: absolute; inset: 28px; border: 1px solid #d9bd6a; }
.lay-ivory .p-inner .head { flex-direction: column; align-items: center; padding: 48px 64px 0; gap: 8px; }
.lay-ivory .p-inner .head img { width: 120px; }
.lay-ivory .p-inner .headtxt { padding-top: 0; text-align: center; }
.lay-ivory .p-inner .ptitle { color: #2f2c1c; font-style: normal; font-size: 40px; }
.lay-ivory .p-inner .prule { margin: 12px auto 0; }
.lay-ivory .p-inner .cards { margin-top: 56px; }
.lay-ivory .p-inner .icard { border: 1.5px solid #e2d3a0; box-shadow: none; border-radius: 10px; }
.lay-ivory .p-inner .icbar { display: none; }
.lay-ivory .p-inner .icard .txt { color: #4c4729; }
.lay-ivory .p-inner thead th { background: var(--c-maroon); color: #fff; }
.lay-ivory .p-inner tbody td { color: #3d3a24; }
.lay-ivory .p-inner tbody tr:nth-child(even) td { background: #f3edd9; }
.lay-ivory .p-inner .numc { background: #c9a227; color: #fff; }

/* back - ivory */
.bck-ivory { position: relative; background: #f8f3e4; display: flex; flex-direction: column; align-items: center; }
.bck-ivory .civ-f1 { position: absolute; inset: 26px; border: 3px solid #c9a227; }
.bck-ivory .civ-f2 { position: absolute; inset: 36px; border: 1px solid #d9bd6a; }
.bck-ivory .biv-arch { margin-top: 110px; }
.bck-ivory .biv-arch .arch { width: 220px; height: 288px; padding: 4px; border-radius: 110px 110px 14px 14px; background: linear-gradient(160deg, #8a6318, #c9a227 40%, #f6e27a 50%, #c9a227 60%, #8a6318); box-shadow: none; }
.bck-ivory .biv-arch .arch-in { background: #f8f3e4; border-radius: 106px 106px 10px 10px; }
.bck-ivory .biv-thanks { margin-top: 34px; font-family: var(--f-head); font-size: 42px; color: #2f2c1c; }
.bck-ivory .biv-msg { margin-top: 14px; text-align: center; font-family: var(--f-head); font-style: italic; font-size: 15px; color: #6d6647; line-height: 1.7; padding: 0 90px; }
.bck-ivory .biv-card { margin-top: 30px; background: #fff; border: 1.5px solid #e2d3a0; border-radius: 10px; padding: 16px 36px; text-align: center; font-size: 13.5px; color: #4c4729; line-height: 1.7; box-shadow: 0 3px 14px rgba(120,100,40,.12); }

/* ---------- BLUSH CIRCLE ---------- */
.cov-blush { position: relative; background: var(--c-pagebg); overflow: hidden; display: flex; flex-direction: column; align-items: center; }
.cbl-blob { position: absolute; border-radius: 50%; background: var(--c-pagebg-l); }
.cbl-blob.b1 { width: 340px; height: 340px; left: -110px; top: -120px; }
.cbl-blob.b2 { width: 200px; height: 200px; right: -60px; top: 60px; }
.cbl-blob.b3 { width: 260px; height: 260px; left: -90px; bottom: 200px; }
.cbl-blob.b4 { width: 300px; height: 300px; right: -120px; bottom: -80px; }
.cbl-blob.b5 { width: 220px; height: 220px; right: 40px; bottom: 240px; }
.cov-blush .cbl-kicker { margin-top: 54px; position: relative; }
.cov-blush .cbl-ring { position: relative; margin-top: 26px; width: 470px; height: 470px; border-radius: 50%; background: #fff; border: 2.5px solid var(--c-rose); display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 30px rgba(127,45,62,.12); }
.cov-blush .cbl-ring img { width: 62%; }
.cov-blush .cbl-dot { position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; background: var(--c-rose); }
.cov-blush .cbl-title { margin-top: 30px; font-family: var(--f-head); font-style: italic; font-size: 44px; color: var(--c-ink); }
.cov-blush .cbl-sub { margin-top: 6px; font-family: var(--f-head); font-style: italic; font-size: 16px; color: var(--c-ink-m); }
.cov-blush .cbl-card { margin-top: 26px; position: relative; display: flex; background: #fff; border-radius: 14px; box-shadow: 0 6px 22px rgba(127,45,62,.14); overflow: hidden; }
.cov-blush .cbl-col { padding: 18px 30px; }
.cov-blush .cbl-col + .cbl-col { border-left: 1.5px solid var(--c-circle); }
.cov-blush .cbl-lab { margin-bottom: 6px; }
.cov-blush .cname { font-family: var(--f-head); font-size: 24px; color: var(--c-ink); font-weight: 600; }
.cov-blush .cline { font-size: 13.5px; color: var(--c-ink-m); margin-top: 3px; font-weight: 500; }
.cov-blush .cbl-foot { position: absolute; bottom: 44px; left: 0; right: 0; text-align: center; font-size: 12px; color: var(--c-ink-m); }

/* inner - blush */
.lay-blush .p-inner { background: #faf0f2; }
.lay-blush .p-inner .band, .lay-blush .p-inner .bandline { display: none; }
.lay-blush .p-inner::before { content: ''; position: absolute; width: 300px; height: 300px; border-radius: 50%; background: #f3dce0; right: -110px; top: -120px; }
.lay-blush .p-inner::after { content: ''; position: absolute; width: 220px; height: 220px; border-radius: 50%; background: #f3dce0; left: -90px; bottom: -80px; }
.lay-blush .p-inner .head { padding: 52px 64px 0; }
.lay-blush .p-inner .head img { width: 112px; }
.lay-blush .p-inner .headtxt { padding-top: 22px; }
.lay-blush .p-inner .ptitle { color: var(--c-ink); font-size: 42px; }
.lay-blush .p-inner .cards { margin-top: 60px; }
.lay-blush .p-inner .icard { border-radius: 12px; box-shadow: 0 5px 18px rgba(127,45,62,.12); }
.lay-blush .p-inner .icbar { display: none; }
.lay-blush .p-inner .icard .txt { color: #5a3540; }
.lay-blush .p-inner thead th { background: var(--c-maroon); color: #fff; }
.lay-blush .p-inner tbody td { color: #4d2a34; }
.lay-blush .p-inner tbody tr:nth-child(even) td { background: #f6e2e6; }
.lay-blush .p-inner tbody tr:nth-child(odd) td { background: #fff; }
.lay-blush .p-inner .numc { background: var(--c-rose); color: #fff; }

/* back - blush */
.bck-blush { position: relative; background: var(--c-pagebg); overflow: hidden; display: flex; flex-direction: column; align-items: center; }
.bck-blush .bbl-ring { margin-top: 150px; width: 400px; height: 400px; border-radius: 50%; background: #fff; border: 2.5px solid var(--c-rose); display: flex; align-items: center; justify-content: center; box-shadow: 0 8px 30px rgba(127,45,62,.12); }
.bck-blush .bbl-ring img { width: 64%; }
.bck-blush .bbl-thanks { margin-top: 34px; font-family: var(--f-head); font-style: italic; font-size: 42px; color: var(--c-ink); }
.bck-blush .bbl-msg { margin-top: 12px; text-align: center; font-size: 14.5px; color: var(--c-ink-m); line-height: 1.7; padding: 0 100px; }
.bck-blush .bbl-band { position: absolute; bottom: 0; left: 0; right: 0; background: var(--c-maroon); color: #fff; text-align: center; font-size: 12.5px; line-height: 1.7; padding: 18px 40px; }

/* ---------- MINIMAL WHITE ---------- */
.cov-min { position: relative; background: var(--c-pagebg); overflow: hidden; }
.cmn-ring { position: absolute; border: 2px solid var(--c-rose-1); border-radius: 50%; }
.cmn-ring.r1 { width: 300px; height: 300px; right: -90px; top: -110px; }
.cmn-ring.r2 { width: 200px; height: 200px; right: 130px; top: -70px; border-color: var(--c-rose-2); }
.cmn-ring.r3 { width: 280px; height: 280px; left: -100px; bottom: -100px; }
.cov-min .cmn-logo { position: absolute; top: 60px; left: 64px; width: 130px; }
.cov-min .cmn-kicker { position: absolute; top: 250px; left: 64px; }
.cov-min .cmn-title { position: absolute; top: 290px; left: 60px; font-family: var(--f-body); font-weight: 200; font-size: 92px; line-height: 1.04; color: var(--c-maroon); letter-spacing: -1px; }
.cov-min .cmn-bar { position: absolute; top: 520px; left: 64px; width: 90px; height: 4px; background: linear-gradient(90deg, #8a6318, #c9a227, #f6e27a); }
.cov-min .cmn-sub { position: absolute; top: 548px; left: 64px; font-size: 16px; color: #5a5644; }
.cov-min .cmn-info { position: absolute; top: 640px; left: 64px; right: 64px; display: flex; gap: 30px; }
.cov-min .cmn-cell { flex: 1; }
.cov-min .cmn-lab { margin-bottom: 8px; }
.cov-min .cname { font-size: 17px; font-weight: 600; color: #1c1c1c; }
.cov-min .cline { font-size: 14px; color: #44423a; margin-top: 3px; line-height: 1.5; }
.cov-min .cmn-foot { position: absolute; bottom: 56px; left: 64px; right: 64px; font-size: 11.5px; color: #8a8672; letter-spacing: .4px; }

/* inner - minimal */
.lay-minimal .p-inner { background: var(--c-pagebg); }
.lay-minimal .p-inner .band, .lay-minimal .p-inner .bandline { display: none; }
.lay-minimal .p-inner .head { padding: 52px 64px 0; gap: 22px; }
.lay-minimal .p-inner .head img { width: 96px; }
.lay-minimal .p-inner .headtxt { padding-top: 14px; }
.lay-minimal .p-inner .ptitle { color: #141414; font-style: normal; font-weight: 300; font-size: 44px; }
.lay-minimal .p-inner .prule { width: 70px; margin-top: 10px; }
.lay-minimal .p-inner .cards { margin-top: 54px; }
.lay-minimal .p-inner .icard { background: transparent; box-shadow: none; border-radius: 0; padding: 0 14px 0 0; }
.lay-minimal .p-inner .icbar { display: none; }
.lay-minimal .p-inner .icard .txt { color: #3a3a32; font-weight: 500; }
.lay-minimal .p-inner thead th { background: #111; color: #fff; letter-spacing: 2.5px; }
.lay-minimal .p-inner tbody td { color: #2c2c26; border-bottom: 1px solid #e8e5da; }
.lay-minimal .p-inner tbody tr:nth-child(even) td { background: transparent; }
.lay-minimal .p-inner tbody tr:nth-child(odd) td { background: transparent; }
.lay-minimal .p-inner .numc { background: #c9a227; color: #fff; }

/* back - minimal */
.bck-min { position: relative; background: var(--c-pagebg); overflow: hidden; }
.bck-min .cmn-logo { position: absolute; top: 60px; left: 64px; width: 120px; }
.bck-min .cmn-kicker { position: absolute; top: 250px; left: 64px; }
.bck-min .bmn-thanks { position: absolute; top: 288px; left: 60px; font-family: var(--f-body); font-weight: 200; font-size: 88px; line-height: 1.05; color: var(--c-maroon); }
.bck-min .cmn-bar { position: absolute; top: 505px; left: 64px; width: 90px; height: 4px; background: linear-gradient(90deg, #8a6318, #c9a227, #f6e27a); }
.bck-min .bmn-msg { position: absolute; top: 540px; left: 64px; right: 200px; font-size: 14.5px; color: #5a5644; line-height: 1.8; }
.bck-min .bmn-rule { position: absolute; top: 660px; left: 64px; right: 64px; height: 1px; background: #ddd8c8; }
.bck-min .bmn-co { position: absolute; top: 690px; left: 64px; font-size: 13px; color: #44423a; line-height: 1.8; }

/* blush inner: footer must paint above the decorative ::after circle (was clipping "Best Regards" text) */
.lay-blush .p-inner .p-foot { z-index: 2; }

/* brand tagline: English | Assamese */
.tagln { position: absolute; left: 0; right: 0; text-align: center; line-height: 1.35; white-space: nowrap; }
.tagln .tg-en { font-family: var(--f-head), serif; font-style: italic; font-weight: 500; }
.tagln .tg-as { font-family: "Noto Sans Bengali", var(--f-body), sans-serif; font-weight: 500; }
.tagln .tg-bar { margin: 0 10px; opacity: .6; }
.tagln.tg-civ, .tagln.tg-cbl, .tagln.tg-cmn, .tagln.tg-bk { font-size: 15px; }
.tagln.tg-civ { bottom: 112px; color: #8a6a14; }
.tagln.tg-cbl { bottom: 106px; color: #8a5a66; }
.tagln.tg-cmn { bottom: 98px; left: 64px; right: 64px; text-align: left; color: #8a6a14; }
.tagln.tg-bk { bottom: 36px; color: #e9d27a; }
.bck-ivory .tagln.tg-bk { color: #8a6a14; }
.bck-blush .tagln.tg-bk { color: #8a5a66; }
.bck-min .tagln.tg-bk { color: #8a6a14; left: 64px; right: 64px; text-align: left; }
.tagln.stack { white-space: normal; }
.tagln.stack span { display: block; }
.tagln.tg-cv { position: static; margin-top: 26px; padding: 0 22px; font-size: 14.5px; color: #e9d27a; }
.tagln.tg-cv .tg-en { font-size: 15.5px; }
.tagln.tg-cv .tg-as { margin-top: 3px; font-size: 14px; }
.tg-ui { font-family: var(--f-head); font-style: italic; }
.tg-ui b { font-family: "Noto Sans Bengali", var(--f-body), sans-serif; font-style: normal; font-weight: 500; }
.tg-line { text-align: center; color: #a8801c; font-size: 14.5px; margin: -2px 0 10px; }
.bck-ivory .tagln.tg-bk { bottom: 74px; }
.bck-blush .tagln.tg-bk { bottom: 122px; }

.lp-row { display: flex; gap: 12px; overflow-x: auto; padding: 4px 2px 12px; margin-bottom: 8px; }
.lp-card { flex: none; }
.lp-lab { font-size: 13px; font-weight: 600; color: #2f5a48; margin-bottom: 6px; }
.lp-win { overflow: hidden; position: relative; border: 1px solid #dde5d0; border-radius: 6px; box-shadow: 0 2px 8px rgba(38,74,59,.12); background: #fff; }
.lp-sc { transform-origin: 0 0; width: 794px; height: 1123px; position: absolute; top: 0; left: 0; }
@media(max-width:520px){.tg-ui b{display:block}.tg-ui i{display:none}}

.p-foot.ag { display: block; padding-top: 0; }
.p-foot.ag .ag-sigs { display: flex; gap: 36px; margin-bottom: 12px; }
.p-foot.ag .ag-sig { flex: 1; min-width: 0; }
.p-foot.ag .ag-sigline { height: 34px; border-bottom: 1.5px solid #8a8f7c; }
.p-foot.ag .ag-siglab { font-size: 11.5px; color: #41543f; padding-top: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.p-foot.ag .ag-frow { position: relative; padding-top: 12px; display: flex; justify-content: space-between; align-items: flex-start; }

.ag-refpg .ref-grid { margin-top: 92px; }

.term-closing { margin: 18px 64px 0; padding-top: 14px; border-top: 1px solid #d9d2b3; font-family: var(--f-head); font-style: italic; font-size: 15px; line-height: 1.6; color: #41543f; text-align: center; }

.svc-grp-head { margin: 18px 2px 8px; font-family: var(--f-head); font-size: 18px; font-weight: 600; color: #264a3b; border-bottom: 2px solid #c9a227; padding-bottom: 5px; display: flex; align-items: center; gap: 8px; }
.svc-grp-head small { margin-left: auto; font-family: var(--f-body); font-size: 12px; font-weight: 500; color: #7d8a72; background: #eef2e5; border-radius: 999px; padding: 2px 10px; }
.svc-grp-head:first-child { margin-top: 4px; }
.flow-sec{margin:26px 64px 0;text-align:left}
.ag-essentials{background:#fff;border:1.5px solid #c9a227;border-radius:16px;padding:6px 16px 10px;margin:10px 0 18px}.ag-essentials h3{margin-top:12px}.ag-essentials input[readonly]{background:#f1f4ea;font-weight:700}

.flow-sigs{display:flex;gap:36px;margin:30px 64px 0}.flow-sigs .ag-sig{flex:1;min-width:0}.flow-sigs .ag-sigline{height:58px;border-bottom:1.5px solid #8a8f7c}.flow-sigs .ag-siglab{font-size:12.5px;color:#41543f;padding-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.flow-sigs{margin-top:16px}.flow-sigs .ag-sigline{height:38px}
.wit-grid{margin-top:12px}.wit-row{padding:8px 16px 10px}.wit-row .sig-line{margin-top:6px}
.ag-refpg ~ .x{}
.lay-arch .term-list .term-item{padding:7px 0}
.lay-arch .term-list .term-item{padding:5px 0}
.lay-arch .term-txt{line-height:1.5}
.term-closing{margin-top:10px;padding-top:8px}
.ag-intro.sign-note,.flow-note{margin-top:10px}
.wit-row .sig-line{margin-top:3px}

.tagln.tg-arch{position:static;margin-top:30px;padding:0 14px;text-align:center;color:#e9d27a;font-size:12px}
.tagln.tg-arch .tg-en{font-size:12.5px;display:block}.tagln.tg-arch .tg-as{font-size:12px;display:block;margin-top:3px}
.arch-in.with-tag{flex-direction:column}.arch-in.with-tag img{width:62%}
.ag-doc .band{height:186px}.ag-doc .bandline{top:186px}
.p-inner.ag-doc .head{padding-top:30px}.ag-doc .head img{width:104px}.ag-doc .headtxt{padding-top:22px}.ag-doc .ptitle{font-size:40px}
.ag-doc .ag-intro{margin-top:64px}.ag-refpg .ref-grid{margin-top:64px}.ag-refpg .ag-refnote{margin-top:64px}
.ag-doc .ag-intro{margin-top:76px}.ag-refpg .ref-grid{margin-top:76px}.ag-refpg .ag-refnote{margin-top:76px}
.ag-refpg .ref-grid{margin-top:98px}.ag-refpg .ag-refnote{margin-top:98px}
.arch-in.with-tag img{margin-top:-6px}
.arch-in.with-tag{padding-top:34px;box-sizing:border-box}.arch-in.with-tag img{margin-top:0}
.arch-in.with-tag{justify-content:space-between;padding:40px 0 26px}.tagln.tg-arch{margin-top:0}
.gst-note{font-size:10px;margin:5px 0 0 6px;opacity:.75;font-style:italic}
.arch-in.with-tag{padding-top:62px}
.arch-in.with-tag{padding-top:92px}
/* lockup variants (arch + logo + tagline) on light designs */
.cov-ivory .civ-arch .arch-in.with-tag,.bck-ivory .biv-arch .arch-in.with-tag{padding:46px 0 20px}
.cov-ivory .tagln.tg-arch,.bck-ivory .tagln.tg-arch{color:#8a6318}
.cov-ivory .arch-in img,.bck-ivory .arch-in img{width:62%}
.cov-blush .cbl-ring .arch,.bck-blush .bbl-ring .arch{width:215px;height:285px;padding:4px;border-radius:108px 108px 14px 14px;background:linear-gradient(160deg,#8a6318,#c9a227 40%,#f6e27a 50%,#c9a227 60%,#8a6318)}
.cov-blush .cbl-ring .arch-in,.bck-blush .bbl-ring .arch-in{background:#fff;border-radius:104px 104px 10px 10px;padding:46px 0 20px}
.cov-blush .cbl-ring .arch-in img,.bck-blush .bbl-ring .arch-in img{width:62%}
.cov-blush .tagln.tg-arch,.bck-blush .tagln.tg-arch{color:var(--c-maroon)}
.cov-min .cmn-logo,.bck-min .cmn-logo{width:150px}
.cov-min .cmn-logo .arch,.bck-min .cmn-logo .arch{width:150px;height:200px;padding:3px;border-radius:75px 75px 10px 10px;background:linear-gradient(160deg,#8a6318,#c9a227 40%,#f6e27a 50%,#c9a227 60%,#8a6318)}
.cov-min .cmn-logo .arch-in,.bck-min .cmn-logo .arch-in{background:#fff;border-radius:72px 72px 7px 7px;padding:30px 0 12px}
.cov-min .cmn-logo .arch-in img,.bck-min .cmn-logo .arch-in img{width:64%}
.cov-min .tagln.tg-arch,.bck-min .tagln.tg-arch{color:#8a6318;padding:0 6px}
.cov-min .tagln.tg-arch .tg-en,.bck-min .tagln.tg-arch .tg-en{font-size:8px}.cov-min .tagln.tg-arch .tg-as,.bck-min .tagln.tg-arch .tg-as{font-size:8px;margin-top:2px}
.cov-min .cmn-kicker,.bck-min .cmn-kicker{top:300px}
.cov-min .cmn-title{top:338px}.cov-min .cmn-bar{top:568px}.cov-min .cmn-sub{top:596px}.cov-min .cmn-info{top:690px}
.bck-min .bmn-thanks{top:338px}.bck-min .cmn-bar{top:552px}.bck-min .bmn-msg{top:588px}.bck-min .bmn-rule{top:704px}.bck-min .bmn-co{top:732px}

/* ===== Royal Band layout (full-width top band) ===== */
.cov-band{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.cbd-band{width:100%;height:452px;background:linear-gradient(170deg,var(--c-maroon-l) 0%,var(--c-maroon) 55%,var(--c-maroon-d) 100%);display:flex;flex-direction:column;align-items:center;position:relative;overflow:hidden}
.cbd-arch{margin-top:66px;position:relative}
.cbd-arch .arch{width:230px;height:304px}
.cbd-band .dias{margin-top:26px;position:relative}
.cbd-edge{width:100%;height:6px}
.cbd-no{margin-top:20px}
.cbd-kicker{margin-top:26px}
.cbd-no + .cbd-kicker{margin-top:14px}
.cbd-title{margin-top:14px;font-family:var(--f-head);font-size:50px;color:var(--c-maroon);font-weight:600;text-align:center;line-height:1.14;padding:0 56px}
.cbd-title.ag{font-size:42px}
.cbd-bar{width:130px;margin-top:16px}
.cbd-sub{margin-top:12px;font-family:var(--f-head);font-style:italic;font-size:19px;color:var(--c-ink);opacity:.78;text-align:center;padding:0 60px}
.cbd-card{margin-top:26px;background:#fff;border:1.5px solid var(--c-rose);border-radius:14px;padding:20px 46px;text-align:center;box-shadow:0 5px 18px rgba(0,0,0,.10);max-width:610px}
.cbd-foot{position:absolute;bottom:36px;left:0;right:0;text-align:center;font-size:12.5px;color:var(--c-ink);opacity:.72;letter-spacing:.5px}
.bck-band{background:var(--c-pagebg)}
.bbd-top{height:428px;background:linear-gradient(170deg,var(--c-maroon-l) 0%,var(--c-maroon) 55%,var(--c-maroon-d) 100%);display:flex;justify-content:center;position:relative;overflow:hidden}
.bbd-arch{margin-top:74px;position:relative}
.bbd-arch .arch{width:220px;height:290px}
.bbd-thanks{margin-top:52px;font-family:var(--f-head);font-style:italic;font-size:54px;color:var(--c-maroon);text-align:center;font-weight:500}
.bbd-dias{margin-top:26px}
.bbd-msg{margin:26px auto 0;max-width:520px;text-align:center;font-size:17px;color:var(--c-ink);line-height:1.8}
.bbd-co{position:absolute;bottom:56px;left:0;right:0;text-align:center;font-size:14px;color:var(--c-ink);opacity:.82;line-height:1.9;font-weight:500}
/* band inner pages: slimmer band, boxed info cards */
.lay-band .p-inner .band{height:206px}
.lay-band .p-inner .bandline{top:206px;height:6px}
.lay-band .p-inner .head{padding:44px 64px 0}
.lay-band .p-inner .head img{width:104px}
.lay-band .p-inner .headtxt{padding-top:22px}
.lay-band .p-inner .ptitle{font-style:normal;font-size:42px}
.lay-band .p-inner .cards{margin-top:74px}
.lay-band .p-inner .icard{border:1.5px solid var(--c-rose);box-shadow:none}
.lay-band .p-inner .icbar{display:none}
.lay-band .ag-doc .band{height:172px}
.lay-band .ag-doc .bandline{top:172px}
.lay-band .ag-doc .head{padding-top:36px}
.lay-band .ag-doc .head img{width:92px}
.lay-band .ag-doc .headtxt{padding-top:16px}
.lay-band .ag-doc .ptitle{font-size:36px}

/* ===== Mocha Spine layout (editorial left spine) ===== */
.cov-spine{background:var(--c-pagebg);display:flex}
.csp-spine{width:88px;flex:none;background:linear-gradient(180deg,var(--c-maroon-l) 0%,var(--c-maroon) 50%,var(--c-maroon-d) 100%);position:relative;display:flex;align-items:center;justify-content:center}
.csp-spine .dias{flex-direction:column;gap:13px}
.csp-dt{position:absolute;top:38px;left:0;right:0}
.csp-db{position:absolute;bottom:38px;left:0;right:0}
.csp-vert{transform:rotate(-90deg);white-space:nowrap;color:#e8c96a;font-size:14px;letter-spacing:6px;font-weight:600}
.csp-main{flex:1;position:relative;padding:80px 60px 0 54px}
.csp-arch .arch{width:228px;height:302px}
.csp-no{margin-top:26px}
.csp-kicker{margin-top:24px}
.csp-no + .csp-kicker{margin-top:12px}
.csp-title{margin-top:12px;font-family:var(--f-head);font-size:48px;color:var(--c-maroon);font-weight:600;line-height:1.12;max-width:470px}
.csp-title.ag{font-size:40px}
.csp-bar{width:120px;margin-top:16px}
.csp-sub{margin-top:12px;font-family:var(--f-head);font-style:italic;font-size:18px;color:var(--c-ink);opacity:.78}
.csp-card{margin-top:26px;background:#fff;border:1.5px solid #e5d9bd;border-left:8px solid var(--c-rose);border-radius:8px;padding:18px 26px;box-shadow:0 3px 12px rgba(0,0,0,.06);max-width:472px}
.csp-card .cv-kicker{margin-bottom:8px}
.csp-foot{position:absolute;bottom:36px;left:54px;right:60px;font-size:12.5px;color:var(--c-ink);opacity:.72;letter-spacing:.4px}
.bck-spine{background:var(--c-pagebg)}
.bsp-spine{position:absolute;left:0;top:0;bottom:0;width:88px;background:linear-gradient(180deg,var(--c-maroon-l) 0%,var(--c-maroon) 50%,var(--c-maroon-d) 100%);display:flex;align-items:center;justify-content:center}
.bsp-main{position:absolute;left:88px;right:0;top:0;bottom:0;display:flex;flex-direction:column;align-items:center}
.bsp-arch{margin-top:150px}
.bsp-arch .arch{width:216px;height:286px}
.bsp-thanks{margin-top:46px;font-family:var(--f-head);font-style:italic;font-size:50px;color:var(--c-maroon);text-align:center;font-weight:500}
.bsp-bar{width:110px;margin-top:18px}
.bsp-msg{margin-top:24px;max-width:440px;text-align:center;font-size:16.5px;color:var(--c-ink);line-height:1.8}
.bsp-co{position:absolute;bottom:56px;left:0;right:0;text-align:center;font-size:13.5px;line-height:1.9;color:var(--c-ink);opacity:.82;font-weight:500}
/* spine inner pages: the band div becomes the left spine strip */
.lay-spine .p-inner .band{top:0;bottom:0;left:0;right:auto;width:26px;height:auto;overflow:visible}
.lay-spine .p-inner .band .bcirc{display:none}
.lay-spine .p-inner .bandline{display:none}
.lay-spine .p-inner .head{padding:48px 64px 0 58px;gap:24px}
.lay-spine .p-inner .head img{width:100px}
.lay-spine .p-inner .headtxt{padding-top:14px}
.lay-spine .p-inner .ptitle{color:var(--c-maroon);font-style:normal;font-size:40px}
.lay-spine .p-inner .cards{margin-top:64px}
.lay-spine .p-inner .icard{border:1px solid #e5d9bd;border-left:6px solid var(--c-rose);box-shadow:none}
.lay-spine .p-inner .icbar{display:none}
.lay-spine .ag-doc .head{padding-top:40px}
.lay-spine .ag-doc .head img{width:90px}
.lay-spine .ag-doc .ptitle{font-size:34px}

/* ===== Aubergine Crest layout (centred crest, double rules) ===== */
.cov-crest{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.ccr-rt{position:absolute;top:26px;left:26px;right:26px;height:10px;border-top:3px solid var(--c-rose);border-bottom:1px solid var(--c-rose)}
.ccr-rb{position:absolute;bottom:26px;left:26px;right:26px;height:10px;border-top:1px solid var(--c-rose);border-bottom:3px solid var(--c-rose)}
.ccr-kicker{margin-top:66px}
.ccr-no{margin-top:14px}
.ccr-arch{margin-top:22px}
.ccr-arch .arch{width:224px;height:296px;box-shadow:0 10px 26px rgba(0,0,0,.22)}
.ccr-title{margin-top:24px;font-family:var(--f-head);font-size:48px;color:var(--c-maroon);font-weight:600;text-align:center;line-height:1.14;padding:0 60px}
.ccr-title.ag{font-size:40px}
.ccr-orn{display:flex;align-items:center;gap:14px;margin-top:16px}
.ccr-orn i{display:block;width:120px;height:2px}
.ccr-orn .l1{background:linear-gradient(90deg,transparent,var(--c-rose))}
.ccr-orn .l2{background:linear-gradient(90deg,var(--c-rose),transparent)}
.ccr-sub{margin-top:12px;font-family:var(--f-head);font-style:italic;font-size:19px;color:var(--c-ink);opacity:.78;text-align:center;padding:0 60px}
.ccr-card{margin-top:26px;border:2px solid var(--c-rose);padding:5px;max-width:612px}
.ccr-cardin{border:1px solid var(--c-rose);padding:16px 42px;text-align:center}
.ccr-foot{position:absolute;bottom:48px;left:0;right:0;text-align:center;font-size:12.5px;color:var(--c-ink);opacity:.72;letter-spacing:.5px}
.bck-crest{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.bcr-arch{margin-top:158px}
.bcr-arch .arch{width:216px;height:286px}
.bcr-thanks{margin-top:44px;font-family:var(--f-head);font-style:italic;font-size:52px;color:var(--c-maroon);text-align:center;font-weight:500}
.bcr-msg{margin:24px auto 0;max-width:500px;text-align:center;font-size:16.5px;color:var(--c-ink);line-height:1.8}
.bcr-co{position:absolute;bottom:64px;left:0;right:0;text-align:center;font-size:14px;color:var(--c-ink);opacity:.82;line-height:1.9;font-weight:500}
/* crest inner pages: centred header, no band */
.lay-crest .p-inner .band{display:none}
.lay-crest .p-inner .bandline{display:none}
.lay-crest .p-inner .head{flex-direction:column;align-items:center;padding:54px 64px 0;gap:14px}
.lay-crest .p-inner .head img{width:96px}
.lay-crest .p-inner .headtxt{padding-top:0;text-align:center}
.lay-crest .p-inner .ptitle{color:var(--c-maroon);font-style:normal;font-size:38px}
.lay-crest .p-inner .prule{margin:12px auto 0}
.lay-crest .p-inner .cards{margin-top:46px}
.lay-crest .p-inner .icard{border-top:4px solid var(--c-rose);border-radius:0 0 8px 8px;box-shadow:0 3px 10px rgba(0,0,0,.07)}
.lay-crest .p-inner .icbar{display:none}
.lay-crest .ag-doc .head{padding-top:44px}
.lay-crest .ag-doc .head img{width:86px}
.lay-crest .ag-doc .ptitle{font-size:32px}

/* full-box logo lockup as a single image everywhere (Deep, 22 Oct) */
.arch{background:none!important;padding:0!important;box-shadow:none!important;border-radius:0!important}
.arch-in{display:none!important}
img.archlk{display:block}
.arch img.archlk{width:100%;height:100%;object-fit:contain}
.p-inner .head img.archlk{height:auto}

/* lockup light/dark variants per background (Deep, 22 Oct) */
img.archlk-d{display:none}
.p-cover img.archlk-l,.p-back img.archlk-l,.lay-arch .p-inner .head img.archlk-l{display:none}
.p-cover img.archlk-d,.p-back img.archlk-d,.lay-arch .p-inner .head img.archlk-d{display:block}
.cov-ivory img.archlk-l,.cov-blush img.archlk-l,.cov-min img.archlk-l,.cov-spine img.archlk-l,.cov-dream img.archlk-l,.bck-ivory img.archlk-l,.bck-blush img.archlk-l,.bck-min img.archlk-l,.bck-spine img.archlk-l,.bck-dream img.archlk-l{display:block}
.cov-ivory img.archlk-d,.cov-blush img.archlk-d,.cov-min img.archlk-d,.cov-spine img.archlk-d,.cov-dream img.archlk-d,.bck-ivory img.archlk-d,.bck-blush img.archlk-d,.bck-min img.archlk-d,.bck-spine img.archlk-d,.bck-dream img.archlk-d{display:none}

/* ===== Dream layout (soft rounded modern panel - powder blue + silver family) ===== */
.cov-dream{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.cdr-panel{position:absolute;left:44px;right:44px;top:150px;bottom:104px;border-radius:52px;background:linear-gradient(180deg,var(--c-band) 0%,var(--c-circle) 100%)}
.cdr-kicker{margin-top:70px;position:relative}
.cdr-arch{margin-top:46px;position:relative}
.cdr-arch .arch{width:224px;height:296px}
.cdr-no{margin-top:18px;position:relative}
.cdr-title{margin-top:22px;position:relative;font-family:var(--f-head);font-size:46px;color:var(--c-maroon);font-weight:600;text-align:center;line-height:1.16;padding:0 90px}
.cdr-title.ag{font-size:40px}
.cdr-bar{width:120px;margin-top:16px;position:relative}
.cdr-sub{margin-top:12px;position:relative;font-family:var(--f-head);font-style:italic;font-size:19px;color:var(--c-ink);opacity:.8;text-align:center;padding:0 80px}
.cdr-card{margin-top:26px;position:relative;background:#fff;border-radius:24px;padding:20px 46px;text-align:center;box-shadow:0 6px 22px rgba(29,48,71,.14);max-width:600px}
.cdr-foot{position:absolute;bottom:40px;left:0;right:0;text-align:center;font-size:12.5px;color:var(--c-ink);opacity:.75;letter-spacing:.5px}
.bck-dream{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.bdr-arch{margin-top:120px;position:relative}
.bdr-arch .arch{width:210px;height:278px}
.bdr-thanks{margin-top:40px;position:relative;font-family:var(--f-head);font-style:italic;font-size:52px;color:var(--c-maroon);text-align:center;font-weight:500}
.bdr-bar{width:110px;margin-top:18px;position:relative}
.bdr-msg{margin-top:24px;position:relative;max-width:480px;text-align:center;font-size:16.5px;color:var(--c-ink);line-height:1.8}
.bdr-co{position:absolute;bottom:140px;left:0;right:0;text-align:center;font-size:13.5px;color:var(--c-ink);opacity:.85;line-height:1.9;font-weight:500}
/* silver gradient bar inside dream pages */
.cov-dream .gbar,.bck-dream .gbar,.lay-dream .gbar{background:linear-gradient(90deg,#6f7d8c 0%,#9aa5b1 22%,#dde4eb 45%,#f4f7fa 50%,#dde4eb 55%,#9aa5b1 78%,#6f7d8c 100%)}
/* dream inner pages: soft rounded header strip instead of the sharp dark band */
.lay-dream .p-inner .band{height:178px;border-radius:0 0 48px 48px;background:linear-gradient(180deg,var(--c-band) 0%,var(--c-circle) 100%)}
.lay-dream .p-inner .band .bcirc{background:rgba(255,255,255,.5)}
.lay-dream .p-inner .bandline{display:none}
.lay-dream .p-inner .head{padding:40px 64px 0}
.lay-dream .p-inner .head img{width:96px}
.lay-dream .p-inner .headtxt{padding-top:12px}
.lay-dream .p-inner .ptitle{font-style:normal;font-size:38px;color:var(--c-maroon)}
.lay-dream .p-inner .cards{margin-top:52px}
.lay-dream .p-inner .icard{border-radius:18px;box-shadow:0 4px 14px rgba(29,48,71,.10);border:1px solid var(--c-circle)}
.lay-dream .p-inner .icbar{display:none}
.lay-dream .p-inner thead th{background:var(--c-maroon);color:#fff}
.lay-dream .p-inner .numc{background:var(--c-maroon)}
.lay-dream .ag-doc .band{height:150px}
.lay-dream .ag-doc .head{padding-top:32px}
.lay-dream .ag-doc .head img{width:84px}
.lay-dream .ag-doc .ptitle{font-size:32px}

/* agreement variants for ivory / blush / minimal covers */
.civ-no{margin-top:40px;position:relative}
.civ-no + .civ-kicker{margin-top:10px}
.civ-title.ag{font-size:38px}
.cbl-no{margin-top:10px;position:relative}
.cbl-title.ag{font-size:38px}
.cmn-no{position:absolute;top:262px;left:64px}
.cov-min .cmn-title.ag{font-size:58px;top:330px;line-height:1.12;max-width:640px}
.cmn-cell-ag{max-width:460px}
.cbl-col-ag{text-align:center}
.cbl-col-ag .cv-kicker{margin-bottom:8px}

/* ===== Noir layout (full black, gold frame - black + gold family) ===== */
.cov-noir{background:#0d0d0d;display:flex;flex-direction:column;align-items:center}
.cno-f1{position:absolute;left:22px;right:22px;top:22px;bottom:22px;border:1.5px solid var(--c-rose);pointer-events:none}
.cno-f2{position:absolute;left:30px;right:30px;top:30px;bottom:30px;border:1px solid #8a6f2f;pointer-events:none}
.cno-kicker{margin-top:66px;position:relative}
.cno-arch{margin-top:34px;position:relative}
.cno-arch .arch{width:216px;height:286px}
.cno-no{margin-top:16px;position:relative}
.cno-title{margin-top:20px;position:relative;font-family:var(--f-head);font-size:50px;color:var(--c-rose);font-weight:600;text-align:center;letter-spacing:2px;line-height:1.16;padding:0 70px}
.cno-title.ag{font-size:41px}
.cno-orn{margin-top:18px;position:relative}
.cno-sub{margin-top:14px;position:relative;font-family:var(--f-head);font-style:italic;font-size:19px;color:#e9ddc2;text-align:center;padding:0 80px}
.cno-card{margin-top:26px;position:relative;border:1.5px solid var(--c-rose);border-radius:6px;padding:18px 44px;text-align:center;max-width:590px;color:#d8cba8}
.cno-card .cname{color:#f4e9cd}
.cno-card .cline{color:#d8cba8}
.cno-card .pill{box-shadow:0 0 0 1px var(--c-rose)}
.cno-foot{position:absolute;bottom:46px;left:0;right:0;text-align:center;font-size:12.5px;color:#c9b988;letter-spacing:1px}
.bck-noir{background:#0d0d0d;display:flex;flex-direction:column;align-items:center}
.bno-arch{margin-top:150px;position:relative}
.bno-arch .arch{width:210px;height:278px}
.bno-thanks{margin-top:40px;position:relative;font-family:var(--f-head);font-style:italic;font-size:54px;color:var(--c-rose);text-align:center;font-weight:500}
.bno-orn{margin-top:20px;position:relative}
.bno-msg{margin-top:24px;position:relative;max-width:480px;text-align:center;font-size:16.5px;color:#e9ddc2;line-height:1.8}
.bno-co{position:absolute;bottom:120px;left:0;right:0;text-align:center;font-size:14px;color:#d8cba8;line-height:1.9;font-weight:500}
/* noir inner pages: slim black right edge, black-and-gold table */
.lay-noir .p-inner .band{top:0;bottom:0;left:auto;right:0;width:16px;height:auto;background:#111;overflow:visible}
.lay-noir .p-inner .band .bcirc{display:none}
.lay-noir .p-inner .bandline{display:none}
.lay-noir .p-inner .head{padding:46px 76px 0 64px;gap:22px}
.lay-noir .p-inner .head img{width:96px}
.lay-noir .p-inner .headtxt{padding-top:12px}
.lay-noir .p-inner .ptitle{color:#111;font-style:normal;font-size:42px}
.lay-noir .p-inner thead th{background:#111;color:#d5af63}
.lay-noir .p-inner tbody tr:nth-child(even) td{background:#f3efe2}
.lay-noir .p-inner .numc{background:#111;color:#e9c96a}
.lay-noir .p-inner .icard{border:1.5px solid #111;box-shadow:none}
.lay-noir .p-inner .icbar{display:none}
.lay-noir .ag-doc .head{padding-top:38px}
.lay-noir .ag-doc .head img{width:86px}
.lay-noir .ag-doc .ptitle{font-size:34px}

/* ===== per-layout table + type differentiation ===== */
.lay-ivory .p-inner thead th{border:1px solid #e2d3a0}
.lay-ivory .p-inner tbody td{border:1px solid #e2d3a0}
.lay-minimal .p-inner thead th{background:transparent;color:#111;border-bottom:2.5px solid #111}
.lay-minimal .p-inner .numc{background:#111}
.lay-band .p-inner tbody tr:nth-child(even) td{background:var(--c-band)}
.lay-crest .p-inner tbody tr:nth-child(even) td{background:var(--c-band)}
.lay-crest .p-inner thead th{border-bottom:3px solid var(--c-rose)}
.lay-spine .p-inner thead th{background:transparent;color:var(--c-maroon);border-bottom:2.5px solid var(--c-rose)}
.lay-spine .p-inner tbody td{border-bottom:1px solid #ead9c6}
.lay-spine .p-inner tbody tr:nth-child(even) td{background:transparent}
.lay-spine .p-inner tbody tr:nth-child(odd) td{background:transparent}
.lay-spine .p-inner .ptitle{font-style:italic}
.csp-title{font-style:italic}
.lay-dream .p-inner tbody tr:nth-child(even) td{background:var(--c-circle)}

/* ===== design-language pass 2 (Deep 2:37 PM: har template ki language alag) ===== */
/* romantic soft: asymmetric blush cover - ring right, text left */
.cov-blush{display:block}
.cov-blush .cbl-no{position:absolute;left:80px;top:132px;margin:0}
.cov-blush .cbl-kicker{position:absolute;left:80px;top:168px;margin:0}
.cov-blush .cbl-ring{position:absolute;right:52px;top:150px;width:430px;height:430px;margin:0}
.cov-blush .cbl-title{position:absolute;left:76px;top:236px;margin:0;max-width:330px;text-align:left;font-size:46px;line-height:1.18}
.cov-blush .cbl-title.ag{font-size:40px}
.cov-blush .cbl-sub{position:absolute;left:80px;top:420px;margin:0;max-width:300px;text-align:left}
.cov-blush .cbl-card{position:absolute;left:80px;bottom:170px;margin:0}
.lay-blush .p-inner .icard{border-radius:20px}
/* heritage invitation: italic serif crest */
.ccr-title{font-style:italic}
.lay-crest .p-inner .ptitle{font-style:italic}
/* regal grand: uppercase tracked band titles */
.cbd-title{text-transform:uppercase;letter-spacing:3px;font-size:44px}
.cbd-title.ag{font-size:35px}
.lay-band .p-inner .ptitle{text-transform:uppercase;letter-spacing:2.5px;font-size:33px}
.lay-band .ag-doc .ptitle{font-size:28px}
/* art-deco luxury: uppercase tracked noir titles */
.cno-title{text-transform:uppercase}
.lay-noir .p-inner .ptitle{text-transform:uppercase;letter-spacing:2px;font-size:33px}
.lay-noir .ag-doc .ptitle{font-size:28px}
/* modern minimal: sans light titles */
.lay-minimal .p-inner .ptitle{font-family:var(--f-body);font-weight:300;letter-spacing:1px;font-size:40px}
/* editorial: flat left-rule info cards on spine */
.lay-spine .p-inner .icard{border:none;border-left:2px solid var(--c-rose);border-radius:0;box-shadow:none;background:transparent;padding:14px 18px}
.cov-spine .csp-title.ag{margin-top:22px}
.cov-spine .csp-no + .csp-kicker{margin-top:18px}

/* ================= 8 ground-up design languages (Deep 2:44 PM) ================= */
/* ---- 1. CERTIFICATE (ivory + champagne) ---- */
.cov-ivory{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.ctf-f1{position:absolute;left:26px;right:26px;top:26px;bottom:26px;border:3px solid var(--c-rose)}
.ctf-f2{position:absolute;left:36px;right:36px;top:36px;bottom:36px;border:1px solid var(--c-rose);opacity:.6}
.ctf-kicker{margin-top:64px;position:relative}
.ctf-arch{margin-top:30px;position:relative}
.ctf-arch .arch{width:190px;height:252px}
.ctf-no{margin-top:16px;position:relative}
.ctf-orn{margin-top:20px;position:relative}
.ctf-title{margin-top:18px;position:relative;font-family:var(--f-head);font-size:34px;letter-spacing:6px;text-transform:uppercase;color:#3a3220;font-weight:600;text-align:center;padding:0 70px;line-height:1.35}
.ctf-title.ag{font-size:29px}
.ctf-sub{margin-top:10px;position:relative;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--c-ink);opacity:.75;text-align:center}
.ctf-plaque{margin-top:28px;position:relative;border:2px solid var(--c-rose);padding:5px;max-width:560px}
.ctf-plaquein{border:1px solid var(--c-rose);padding:16px 46px;text-align:center}
.ctf-plab{margin-bottom:8px}
.ctf-pname{font-family:var(--f-head);font-size:28px;color:#3a3220;font-weight:600}
.ctf-pline{font-size:13px;color:var(--c-ink);opacity:.8;margin-top:6px}
.ctf-pbud{margin-top:10px;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--c-maroon);font-weight:600}
.ctf-pgst{font-size:10px;font-style:italic;opacity:.7;margin-top:3px}
.ctf-foot{position:absolute;bottom:52px;left:0;right:0;text-align:center;font-size:12px;color:var(--c-ink);opacity:.7;letter-spacing:.5px}
.bck-ivory{background:var(--c-pagebg);display:flex;flex-direction:column;align-items:center}
.ctf-barch{margin-top:130px;position:relative}
.ctf-barch .arch{width:180px;height:238px}
.ctf-thanks{margin-top:30px;position:relative;font-family:var(--f-head);font-size:40px;letter-spacing:4px;text-transform:uppercase;color:#3a3220;font-weight:600}
.ctf-msg{margin-top:20px;position:relative;max-width:480px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:15.5px;color:var(--c-ink);opacity:.8;line-height:1.8}
.ctf-bco{margin-top:30px;font-size:13.5px;color:var(--c-ink);line-height:1.8}

/* ---- 2. ROYAL HERALDIC (maroon + antique gold) ---- */
.cov-crest{background:var(--c-maroon);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.ryl-rt{position:absolute;top:24px;left:24px;right:24px;height:10px;border-top:3px solid var(--c-rose);border-bottom:1px solid var(--c-rose)}
.ryl-rb{position:absolute;bottom:24px;left:24px;right:24px;height:10px;border-top:1px solid var(--c-rose);border-bottom:3px solid var(--c-rose)}
.ryl-kicker{margin-top:62px;position:relative}
.ryl-arch{margin-top:26px;position:relative}
.ryl-arch .arch{width:236px;height:312px}
.ryl-no{margin-top:16px;position:relative}
.ryl-title{margin-top:20px;position:relative;font-family:var(--f-head);font-style:italic;font-size:46px;color:var(--c-rose);font-weight:600;text-align:center;line-height:1.2;padding:0 70px}
.ryl-title.ag{font-size:38px}
.ryl-dias{margin-top:20px;position:relative}
.ryl-sub{margin-top:16px;position:relative;font-family:var(--f-head);font-style:italic;font-size:18px;color:#f3e9d2;text-align:center;padding:0 80px}
.ryl-plaque{margin-top:26px;position:relative;border:1.5px solid var(--c-rose);padding:18px 50px;text-align:center;max-width:580px}
.ryl-plab{margin-bottom:6px}
.ryl-pname{font-family:var(--f-head);font-size:30px;color:#f7efdc;font-weight:600}
.ryl-pline{font-size:13.5px;color:#e8dcc0;margin-top:6px;line-height:1.7}
.ryl-pbud{margin-top:12px}
.ryl-pgst{font-size:10px;font-style:italic;color:#e8dcc0;opacity:.7;margin-top:4px}
.ryl-foot{position:absolute;bottom:52px;left:0;right:0;text-align:center;font-size:12.5px;color:#e8dcc0;letter-spacing:1px}
.bck-crest{background:var(--c-maroon);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.ryl-barch{margin-top:140px;position:relative}
.ryl-barch .arch{width:220px;height:292px}
.ryl-thanks{margin-top:34px;position:relative;font-family:var(--f-head);font-style:italic;font-size:50px;color:var(--c-rose);font-weight:500}
.ryl-msg{margin-top:22px;position:relative;max-width:480px;text-align:center;font-size:16px;color:#f3e9d2;line-height:1.85}
.ryl-bco{position:absolute;bottom:64px;left:0;right:0;text-align:center;font-size:13.5px;color:#e8dcc0;line-height:1.9}

/* ---- 3. MODERN POSTER (sage + white) ---- */
.cov-min{background:var(--c-pagebg);position:relative;overflow:hidden}
.mdn-sq1{position:absolute;right:-120px;top:-120px;width:380px;height:380px;background:var(--c-circle)}
.mdn-sq2{position:absolute;right:-60px;top:220px;width:180px;height:180px;background:var(--c-band)}
.mdn-logo{position:absolute;top:56px;right:64px}
.mdn-logo .arch{width:86px;height:114px}
.mdn-kicker{position:absolute;left:72px;top:120px}
.mdn-no{position:absolute;left:72px;top:96px}
.mdn-title{position:absolute;left:68px;top:160px;font-family:var(--f-body);font-weight:200;font-size:104px;line-height:1.02;color:var(--c-maroon);letter-spacing:-2px;max-width:580px}
.mdn-rule{position:absolute;left:72px;top:586px;width:120px;height:3px;background:var(--c-rose)}
.mdn-sub{position:absolute;left:72px;top:614px;max-width:440px;font-size:17px;color:var(--c-ink);opacity:.75;font-weight:300;line-height:1.6}
.mdn-meta{position:absolute;left:72px;right:72px;bottom:150px;display:flex;gap:40px}
.mdn-col{flex:1;border-top:2px solid var(--c-maroon);padding-top:12px}
.mdn-lab{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--c-rose);font-weight:600}
.mdn-val{font-size:15px;color:var(--c-ink);margin-top:8px;line-height:1.65;font-weight:400}
.mdn-gst{font-size:10.5px;font-style:italic;opacity:.65}
.mdn-foot{position:absolute;left:72px;bottom:60px;font-size:11.5px;letter-spacing:1px;color:var(--c-ink);opacity:.55;text-transform:uppercase}
.bck-min{background:var(--c-pagebg);position:relative;overflow:hidden}
.mdn-sq3{position:absolute;left:-100px;bottom:-120px;width:360px;height:360px;background:var(--c-circle)}
.mdn-blog{top:70px}
.mdn-thanks{position:absolute;left:68px;top:220px;font-family:var(--f-body);font-weight:200;font-size:96px;color:var(--c-maroon);letter-spacing:-2px}
.bck-min .mdn-rule{top:368px}
.mdn-msg{position:absolute;left:72px;top:408px;max-width:480px;font-size:16px;color:var(--c-ink);opacity:.8;line-height:1.8;font-weight:300}
.mdn-bco{position:absolute;left:72px;bottom:80px;font-size:13px;color:var(--c-ink);opacity:.7;line-height:1.9}

/* ---- 4. ROMANTIC GARDEN (dusty rose + blush) ---- */
.cov-blush{position:relative;background:var(--c-pagebg);overflow:hidden}
.rg-ring{position:absolute;right:30px;top:110px;width:450px;height:450px;border-radius:50%;background:#fff;border:2.5px solid var(--c-rose);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 34px rgba(142,74,93,.16)}
.rg-ring .arch{width:250px;height:330px}
.rg-no{position:absolute;left:76px;top:126px}
.rg-kicker{position:absolute;left:76px;top:158px}
.rg-title{position:absolute;left:72px;top:240px;font-family:var(--f-head);font-style:italic;font-size:58px;color:#7f3547;font-weight:600;line-height:1.15;max-width:340px}
.rg-title.ag{font-size:46px}
.rg-dots{position:absolute;left:80px;top:472px;display:flex;gap:14px}
.rg-dots span{width:9px;height:9px;border-radius:50%;background:var(--c-rose)}
.rg-sub{position:absolute;left:76px;top:502px;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--c-ink);opacity:.75;max-width:330px;line-height:1.6}
.rg-meta{position:absolute;left:76px;bottom:150px}
.rg-name{font-family:var(--f-head);font-style:italic;font-size:30px;color:#7f3547;font-weight:600;margin-top:8px}
.rg-lines{font-size:13.5px;color:var(--c-ink);opacity:.8;margin-top:6px;line-height:1.7}
.rg-budget{margin-top:10px;font-size:14.5px;letter-spacing:2px;text-transform:uppercase;color:#7f3547;font-weight:600}
.rg-gst{text-transform:none;letter-spacing:0;font-weight:400;font-style:italic;font-size:11px;opacity:.7}
.bck-blush{position:relative;background:var(--c-pagebg);overflow:hidden}
.rg-bring{position:absolute;left:70px;top:150px;width:340px;height:340px;border-radius:50%;background:#fff;border:2px solid var(--c-rose);display:flex;align-items:center;justify-content:center}
.rg-bring .arch{width:180px;height:238px}
.rg-thanks{position:absolute;right:80px;top:240px;font-family:var(--f-head);font-style:italic;font-size:52px;color:#7f3547;text-align:right}
.rg-dots.rg-dc{position:absolute;right:88px;top:332px;left:auto}
.rg-msg{position:absolute;right:80px;top:372px;width:340px;text-align:right;font-family:var(--f-head);font-style:italic;font-size:15.5px;color:var(--c-ink);opacity:.8;line-height:1.8}
.rg-bco{position:absolute;left:80px;bottom:70px;font-size:13px;color:var(--c-ink);opacity:.75;line-height:1.9}

/* ---- 6. EDITORIAL MAGAZINE (rust + terracotta) ---- */
.cov-spine{background:var(--c-pagebg);display:flex}
.ed-spine{width:64px;flex:none;background:linear-gradient(180deg,var(--c-maroon-l),var(--c-maroon) 50%,var(--c-maroon-d));position:relative;display:flex;align-items:center;justify-content:center}
.ed-spine .dias{flex-direction:column;gap:13px}
.ed-main{flex:1;position:relative}
.ed-mast{position:absolute;top:44px;left:56px;right:48px}
.ed-mastname{font-family:var(--f-head);font-size:30px;font-weight:600;color:var(--c-maroon);letter-spacing:1px}
.ed-mastrule{height:3px;background:var(--c-maroon);margin-top:8px}
.ed-mastline{margin-top:8px}
.ed-kicker{position:absolute;top:172px;left:56px;font-size:12px;letter-spacing:5px;color:var(--c-rose);font-weight:600;text-transform:uppercase}
.ed-title{position:absolute;top:198px;left:52px;right:240px;font-family:var(--f-head);font-style:italic;font-weight:600;font-size:66px;line-height:1.08;color:var(--c-maroon)}
.ed-title.ag{font-size:52px}
.ed-stand{position:absolute;top:424px;left:56px;max-width:400px;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--c-ink);opacity:.78;line-height:1.65}
.ed-contents{position:absolute;left:56px;right:56px;bottom:170px;display:flex;border-top:2px solid var(--c-maroon)}
.ed-ccol{flex:1;padding:16px 24px 0 0}
.ed-ccol + .ed-ccol{border-left:1px solid var(--c-rose);padding-left:24px}
.ed-clab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--c-rose);font-weight:600}
.ed-cname{font-family:var(--f-head);font-size:24px;color:var(--c-maroon);font-weight:600;margin-top:6px}
.ed-clines{font-size:13px;color:var(--c-ink);margin-top:6px;line-height:1.7}
.ed-gst{font-size:10.5px;font-style:italic;font-weight:400;opacity:.7}
.ed-logo{position:absolute;right:56px;top:150px}
.ed-logo .arch{width:120px;height:158px}
.ed-foot{position:absolute;bottom:44px;left:56px;right:56px;display:flex;justify-content:space-between;border-top:1px solid var(--c-rose);padding-top:10px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--c-ink);opacity:.65}
.bck-spine{background:var(--c-pagebg)}
.ed-thanks{position:absolute;top:200px;left:56px;font-family:var(--f-head);font-style:italic;font-weight:600;font-size:70px;color:var(--c-maroon)}
.ed-tmsg{position:absolute;top:330px;left:56px;max-width:440px;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--c-ink);opacity:.8;line-height:1.85}
.ed-blog{top:auto;bottom:170px}
.ed-bco{position:absolute;bottom:60px;left:56px;font-size:11.5px;letter-spacing:2px;text-transform:uppercase;color:var(--c-ink);opacity:.6}

/* ---- 7. REGAL ARCH WINDOW (emerald + ivory) ---- */
.cov-band{background:var(--c-maroon);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.rw-bg{position:absolute;left:0;right:0;top:0;bottom:0;background:linear-gradient(170deg,var(--c-maroon-l) 0%,var(--c-maroon) 55%,var(--c-maroon-d) 100%);overflow:hidden}
.rw-window{position:relative;margin-top:74px;width:604px;border-radius:302px 302px 26px 26px;background:linear-gradient(180deg,#faf6e9,#f1e9d2);border:3px solid var(--c-rose);display:flex;flex-direction:column;align-items:center;padding:52px 46px 36px}
.rw-arch .arch{width:200px;height:264px}
.rw-kicker{margin-top:20px}
.rw-no{margin-top:12px}
.rw-title{margin-top:14px;font-family:var(--f-head);font-size:38px;color:var(--c-maroon);font-weight:600;text-transform:uppercase;letter-spacing:2.5px;text-align:center;line-height:1.2}
.rw-title.ag{font-size:30px}
.rw-orn{margin-top:14px}
.rw-sub{margin-top:10px;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--c-ink);opacity:.78;text-align:center;max-width:440px}
.rw-meta{position:relative;margin-top:34px;text-align:center}
.rw-mname{font-family:var(--f-head);font-size:30px;color:#f7f2e2;font-weight:600;margin-top:8px}
.rw-mline{font-size:13px;color:#e9e2cc;margin-top:6px}
.rw-mbud{margin-top:14px}
.rw-mgst{font-size:10px;font-style:italic;color:#e9e2cc;opacity:.75;margin-top:4px}
.rw-foot{position:absolute;bottom:40px;left:0;right:0;text-align:center;font-size:12px;color:#e9e2cc;opacity:.75;letter-spacing:1px}
.bck-band{background:var(--c-maroon);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.rw-bwin{margin-top:130px;padding:60px 46px 44px}
.rw-thanks{margin-top:24px;font-family:var(--f-head);font-style:italic;font-size:46px;color:var(--c-maroon);font-weight:500}
.rw-msg{margin-top:18px;max-width:420px;text-align:center;font-size:15.5px;color:var(--c-ink);line-height:1.8}
.rw-bco{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:13px;color:#e9e2cc;line-height:1.9}

/* ---- 8. SWISS GRID (powder blue + silver) ---- */
.cov-dream{background:var(--c-pagebg);position:relative;overflow:hidden}
.sw-b1{position:absolute;left:-70px;top:-70px;width:300px;height:300px;background:var(--c-circle)}
.sw-b2{position:absolute;left:230px;top:-110px;width:180px;height:180px;background:var(--c-band)}
.sw-logo{position:absolute;left:64px;top:64px}
.sw-logo .arch{width:88px;height:116px}
.sw-top{position:absolute;right:64px;top:78px}
.sw-title{position:absolute;left:60px;top:250px;font-family:var(--f-body);font-weight:600;font-size:58px;line-height:1.08;color:var(--c-maroon);max-width:610px;letter-spacing:-.5px}
.sw-rule{position:absolute;left:64px;top:520px;width:150px;height:6px;background:var(--c-rose)}
.sw-sub{position:absolute;left:64px;top:548px;max-width:440px;font-size:16px;color:var(--c-ink);opacity:.7;line-height:1.6}
.sw-grid{position:absolute;left:64px;right:64px;bottom:170px;display:flex;gap:36px}
.sw-col{flex:1;border-top:3px solid var(--c-maroon);padding-top:12px}
.sw-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#7d8a99;font-weight:600}
.sw-val{font-size:15px;color:var(--c-ink);margin-top:8px;line-height:1.6}
.sw-gst{font-size:10.5px;font-style:italic;opacity:.65}
.sw-foot{position:absolute;left:64px;right:64px;bottom:56px;display:flex;justify-content:space-between;border-top:1px solid #c3c8d2;padding-top:10px;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#7d8a99}
.bck-dream{background:var(--c-pagebg);position:relative;overflow:hidden}
.sw-b3{position:absolute;right:-80px;bottom:-90px;width:340px;height:340px;background:var(--c-circle)}
.sw-blog{top:80px}
.sw-thanks{position:absolute;left:60px;top:200px;font-family:var(--f-body);font-weight:600;font-size:72px;color:var(--c-maroon);letter-spacing:-1px}
.bck-dream .sw-rule{top:330px}
.sw-msg{position:absolute;left:64px;top:368px;max-width:460px;font-size:15.5px;color:var(--c-ink);opacity:.75;line-height:1.8}
.sw-bco{position:absolute;left:64px;right:64px;bottom:60px;display:flex;justify-content:space-between;border-top:1px solid #c3c8d2;padding-top:10px;font-size:11.5px;letter-spacing:1px;text-transform:uppercase;color:#7d8a99}

/* noir deco corners */
.cno-f1::before{content:'';position:absolute;left:-8px;top:-8px;width:30px;height:30px;border-left:3px solid var(--c-rose);border-top:3px solid var(--c-rose)}
.cno-f1::after{content:'';position:absolute;right:-8px;top:-8px;width:30px;height:30px;border-right:3px solid var(--c-rose);border-top:3px solid var(--c-rose)}
.cno-f2::before{content:'';position:absolute;left:-8px;bottom:-8px;width:30px;height:30px;border-left:3px solid var(--c-rose);border-bottom:3px solid var(--c-rose)}
.cno-f2::after{content:'';position:absolute;right:-8px;bottom:-8px;width:30px;height:30px;border-right:3px solid var(--c-rose);border-bottom:3px solid var(--c-rose)}

/* inner-page language upgrades */
.lay-ivory .p-inner .ptitle{text-transform:uppercase;letter-spacing:3px;font-size:29px;font-style:normal}
.lay-ivory .ag-doc .ptitle{font-size:25px}
.lay-crest .p-inner .prule{width:90px}
.lay-crest .p-inner{border-top:14px solid var(--c-maroon)}
.lay-minimal .p-inner .ptitle{font-family:var(--f-body);font-weight:300;font-size:44px}
.lay-dream .p-inner .band{border-radius:0;height:150px}
.lay-dream .p-inner .head{padding-top:34px}
.lay-dream .p-inner .ptitle{font-weight:600;font-size:33px}
.lay-dream .p-inner .icard{border-radius:4px;box-shadow:none;border:1px solid var(--c-circle)}
.lay-dream .ag-doc .band{height:126px}

/* ================= design languages v3 (Deep 4:55 PM): hero lockup, no boxes ================= */
/* ---- 1. GILDED FRAME (ivory + champagne) ---- */
.cov-ivory{background:#f6f1e2;display:flex;flex-direction:column;align-items:center;overflow:hidden}
.gfr-glow{position:absolute;inset:0;background:radial-gradient(ellipse 62% 42% at 50% 30%, rgba(219,192,130,.38), rgba(219,192,130,0) 72%),repeating-linear-gradient(45deg, rgba(181,154,100,.045) 0 2px, rgba(181,154,100,0) 2px 26px)}
.gfr-o1{position:absolute;inset:24px;border:3px solid #b59a64;pointer-events:none}
.gfr-o2{position:absolute;inset:33px;border:1px solid #cbb27f;pointer-events:none}
.gfr-cn{position:absolute;width:46px;height:46px;pointer-events:none}
.gfr-cn.tl{left:13px;top:13px;border-left:2px solid #8f774a;border-top:2px solid #8f774a}
.gfr-cn.tr{right:13px;top:13px;border-right:2px solid #8f774a;border-top:2px solid #8f774a}
.gfr-cn.bl{left:13px;bottom:13px;border-left:2px solid #8f774a;border-bottom:2px solid #8f774a}
.gfr-cn.br{right:13px;bottom:13px;border-right:2px solid #8f774a;border-bottom:2px solid #8f774a}
.gfr-kicker{margin-top:56px;position:relative}
.gfr-logo{margin-top:20px;position:relative}
.gfr-logo .arch{width:300px;height:391px}
.gfr-no{margin-top:12px;position:relative}
.gfr-title{margin-top:16px;position:relative;font-family:var(--f-head);font-size:32px;letter-spacing:6px;text-transform:uppercase;color:#3a3220;font-weight:600;text-align:center;padding:0 80px;line-height:1.35}
.gfr-title.ag{font-size:27px}
.gfr-orn{margin-top:16px;position:relative}
.gfr-sub{margin-top:12px;position:relative;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:#6b5f3f;text-align:center}
.gfr-meta{margin-top:20px;position:relative;text-align:center;max-width:620px}
.gfr-mrule{width:320px;height:1px;background:#b59a64;margin:10px auto}
.gfr-mname{font-family:var(--f-head);font-size:26px;color:#3a3220;font-weight:600;margin-top:6px}
.gfr-mline{font-size:12.5px;color:#5d5433;margin-top:5px}
.gfr-mbud{margin-top:8px}
.gfr-mgst{font-size:10px;font-style:italic;color:#6b5f3f;margin-top:3px}
.gfr-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:#6b5f3f;letter-spacing:.5px}
.bck-ivory{background:#f6f1e2;display:flex;flex-direction:column;align-items:center;overflow:hidden}
.gfr-blogo{margin-top:150px;position:relative}
.gfr-blogo .arch{width:250px;height:326px}
.gfr-thanks{margin-top:28px;position:relative;font-family:var(--f-head);font-size:38px;letter-spacing:5px;text-transform:uppercase;color:#3a3220;font-weight:600}
.gfr-msg{margin-top:18px;position:relative;max-width:470px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:15px;color:#5d5433;line-height:1.8}
.gfr-brule{width:200px;height:1px;background:#b59a64;margin-top:24px}
.gfr-bco{margin-top:18px;position:relative;text-align:center;font-size:13px;color:#5d5433;line-height:1.8}

/* ---- 2. DARK HORIZON (maroon + antique gold) ---- */
.cov-crest{background:linear-gradient(180deg,#6d2133 0%,#571829 55%,#43101f 100%);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.dkh-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%, rgba(215,175,55,.20), rgba(215,175,55,0) 55%)}
.dkh-cn{position:absolute;width:46px;height:46px;pointer-events:none}
.dkh-cn.tl{left:18px;top:18px;border-left:2px solid #c4a158;border-top:2px solid #c4a158}
.dkh-cn.tr{right:18px;top:18px;border-right:2px solid #c4a158;border-top:2px solid #c4a158}
.dkh-cn.bl{left:18px;bottom:18px;border-left:2px solid #c4a158;border-bottom:2px solid #c4a158}
.dkh-cn.br{right:18px;bottom:18px;border-right:2px solid #c4a158;border-bottom:2px solid #c4a158}
.dkh-kicker{margin-top:54px;position:relative}
.dkh-logo{margin-top:22px;position:relative}
.dkh-logo .arch{width:316px;height:412px}
.dkh-sep{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:20px;position:relative}
.dkh-sep i{display:block;width:150px;height:1px;background:#c4a158}
.dkh-sep .dia{width:9px;height:9px;background:#c4a158;transform:rotate(45deg)}
.dkh-no{margin-top:12px;position:relative}
.dkh-title{margin-top:14px;position:relative;font-family:var(--f-head);font-style:italic;font-size:43px;color:#e9c96a;font-weight:600;text-align:center;line-height:1.2;padding:0 70px}
.dkh-title.ag{font-size:36px}
.dkh-sub{margin-top:10px;position:relative;font-family:var(--f-head);font-style:italic;font-size:17px;color:#f3e9d2;text-align:center}
.dkh-meta{margin-top:18px;position:relative;text-align:center;max-width:640px}
.dkh-mrule{width:360px;height:1px;background:rgba(196,161,88,.8);margin:10px auto}
.dkh-mname{font-family:var(--f-head);font-size:25px;color:#f7efdc;font-weight:600;margin-top:6px}
.dkh-mline{font-size:12.5px;color:#e8dcc0;margin-top:5px}
.dkh-mbud{margin-top:8px}
.dkh-mgst{font-size:10px;font-style:italic;color:#e8dcc0;opacity:.75;margin-top:3px}
.dkh-foot{position:absolute;bottom:42px;left:0;right:0;text-align:center;font-size:12px;color:#e8dcc0;letter-spacing:1px}
.bck-crest{background:linear-gradient(180deg,#571829 0%,#6d2133 60%,#43101f 100%);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.dkh-blogo{margin-top:150px;position:relative}
.dkh-blogo .arch{width:260px;height:339px}
.dkh-thanks{margin-top:30px;position:relative;font-family:var(--f-head);font-style:italic;font-size:48px;color:#e9c96a;font-weight:500}
.dkh-msg{margin-top:22px;position:relative;max-width:470px;text-align:center;font-size:15.5px;color:#f3e9d2;line-height:1.85}
.dkh-bco{margin-top:26px;position:relative;text-align:center;font-size:13px;color:#e8dcc0;line-height:1.5}

/* ---- 3. VERTICAL SPLIT (sage + white) ---- */
.cov-min{background:#fff;position:relative;overflow:hidden}
.vsp-panel{position:absolute;left:0;top:0;bottom:0;width:300px;background:linear-gradient(165deg,#aab791 0%,#84936a 60%,#71805a 100%)}
.vsp-tex{position:absolute;inset:0;background:repeating-linear-gradient(90deg, rgba(255,255,255,.07) 0 1px, rgba(255,255,255,0) 1px 22px)}
.vsp-logo{position:absolute;left:30px;top:110px}
.vsp-logo .arch{width:240px;height:313px}
.vsp-edge{position:absolute;right:14px;top:40px;bottom:40px;width:1px;background:rgba(255,255,255,.45)}
.vsp-ref{position:absolute;left:0;bottom:70px;width:300px;text-align:center;font-size:10.5px;letter-spacing:3px;color:rgba(255,255,255,.9)}
.vsp-main{position:absolute;left:300px;right:0;top:0;bottom:0;padding:78px 60px 0 56px}
.vsp-title{margin-top:16px;font-family:'Poppins',sans-serif;font-weight:200;font-size:78px;line-height:1.04;color:#44503a;letter-spacing:-1px}
.vsp-title.ag{font-size:60px;font-weight:300}
.vsp-rule{width:110px;height:3px;background:#c6a96d;margin-top:26px}
.vsp-sub{margin-top:20px;max-width:380px;font-family:'Poppins',sans-serif;font-weight:300;font-size:16px;color:#6b6b5e;line-height:1.6}
.vsp-grid{position:absolute;left:56px;right:60px;bottom:130px;display:flex;gap:34px}
.vsp-col{flex:1;border-top:2px solid #84936a;padding-top:12px}
.vsp-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#71805a;font-weight:600}
.vsp-val{font-size:14.5px;color:#33392c;margin-top:8px;line-height:1.6}
.vsp-gst{font-size:10.5px;font-style:italic;color:#6b6b5e}
.vsp-foot{position:absolute;left:56px;right:60px;bottom:56px;font-size:11.5px;color:#6b6b5e;letter-spacing:.5px}
.vsp-pright{left:auto;right:0}
.vsp-eleft{right:auto;left:14px}
.vsp-blog{top:140px}
.vsp-mback{left:0;right:300px;padding:170px 70px 0 64px}
.vsp-thanks{font-family:'Poppins',sans-serif;font-weight:200;font-size:62px;color:#44503a;letter-spacing:-1px}
.vsp-msg{margin-top:26px;max-width:400px;font-size:15.5px;color:#55584c;line-height:1.85}
.vsp-bco{margin-top:34px;font-size:13.5px;color:#6b6b5e;line-height:1.9}

/* ---- 4. ROMANTIC HALO (dusty rose) ---- */
.cov-blush{background:radial-gradient(circle at 50% 30%, #fdeef1 0%, #f7e2e6 55%, #f2d8dd 100%);display:block;overflow:hidden;position:relative}
.rhl-halo{position:absolute;left:50%;top:88px;transform:translateX(-50%);width:520px;height:520px}
.rhl-c1{position:absolute;inset:0;border:1.5px solid rgba(200,142,154,.55);border-radius:50%}
.rhl-c2{position:absolute;inset:36px;border:1px solid rgba(200,142,154,.4);border-radius:50%}
.rhl-c3{position:absolute;inset:72px;border:1px solid rgba(200,142,154,.28);border-radius:50%}
.rhl-dot{position:absolute;left:50%;top:50%;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border-radius:50%;background:#c88e9a}
.rhl-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.rhl-logo .arch{width:246px;height:321px}
.rhl-kicker{position:absolute;left:0;right:0;top:644px;text-align:center}
.rhl-no{position:absolute;left:0;right:0;top:670px;text-align:center}
.rhl-title{position:absolute;left:60px;right:60px;top:692px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:44px;color:#a66479;font-weight:600;line-height:1.2}
.rhl-title.ag{font-size:37px}
.rhl-dots{position:absolute;left:50%;top:806px;transform:translateX(-50%);display:flex;gap:10px}
.rhl-dots span{width:6px;height:6px;border-radius:50%;background:#c88e9a}
.rhl-sub{position:absolute;left:0;right:0;top:830px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:#8f5563}
.rhl-meta{position:absolute;left:90px;right:90px;bottom:118px;display:flex;gap:56px;justify-content:center}
.rhl-col{flex:1;max-width:300px;border-top:1.5px solid #c88e9a;padding-top:12px;text-align:center}
.rhl-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#b07584;font-weight:600}
.rhl-name{font-family:var(--f-head);font-style:italic;font-size:21px;color:#7c4653;margin-top:6px}
.rhl-val{font-size:13px;color:#6b4a52;margin-top:6px;line-height:1.65}
.rhl-gst{font-size:10px;font-style:italic;color:#8f5563}
.rhl-foot{position:absolute;bottom:50px;left:0;right:0;text-align:center;font-size:11.5px;color:#8f5563;letter-spacing:.5px}
.bck-blush{background:radial-gradient(circle at 50% 38%, #fdeef1 0%, #f7e2e6 55%, #f2d8dd 100%);display:block;overflow:hidden;position:relative}
.rhl-bhalo{top:130px;width:440px;height:440px}
.rhl-blogo .arch{width:210px;height:274px}
.rhl-thanks{position:absolute;left:0;right:0;top:620px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:44px;color:#a66479;font-weight:600}
.rhl-msg{position:absolute;left:130px;right:130px;top:700px;text-align:center;font-size:15px;font-style:italic;color:#6b4a52;line-height:1.85}
.rhl-bco{position:absolute;left:0;right:0;bottom:60px;text-align:center;font-size:12.5px;color:#8f5563;line-height:1.6}

/* ---- 5. NOIR DECO v3 (black + gold) ---- */
.nr2-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 30%, rgba(213,175,99,.16), rgba(213,175,99,0) 55%)}
.nr2-kicker{margin-top:58px;position:relative;text-align:center}
.nr2-logo{margin-top:20px;position:relative;display:flex;justify-content:center}
.nr2-logo .arch{width:310px;height:404px}
.nr2-no{margin-top:12px;position:relative;text-align:center}
.nr2-title{margin-top:14px;position:relative;font-family:var(--f-head);font-size:35px;letter-spacing:7px;text-transform:uppercase;color:#e9c96a;font-weight:600;text-align:center;padding:0 60px;line-height:1.3}
.nr2-title.ag{font-size:28px}
.nr2-orn{margin-top:16px;position:relative}
.nr2-sub{margin-top:12px;position:relative;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:#d8cdb4;text-align:center}
.nr2-meta{margin-top:20px;position:relative;text-align:center}
.nr2-mrule{width:320px;height:1px;background:rgba(213,175,99,.75);margin:10px auto}
.nr2-mname{font-family:var(--f-head);font-size:26px;color:#f3ecd9;font-weight:600;margin-top:6px}
.nr2-mline{font-size:12.5px;color:#cbbf9f;margin-top:5px}
.nr2-mbud{margin-top:8px}
.nr2-mgst{font-size:10px;font-style:italic;color:#cbbf9f;margin-top:3px}
.nr2-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:#a99c7c;letter-spacing:1px}
.nr2-blogo{margin-top:150px;position:relative;display:flex;justify-content:center}
.nr2-blogo .arch{width:245px;height:320px}
.nr2-thanks{margin-top:28px;position:relative;font-family:var(--f-head);font-style:italic;font-size:44px;color:#e9c96a;text-align:center;font-weight:500}
.nr2-msg{margin-top:18px;position:relative;max-width:460px;text-align:center;font-size:15px;color:#d8cdb4;line-height:1.85;margin-left:auto;margin-right:auto}
.nr2-brule{width:200px;height:1px;background:rgba(213,175,99,.75);margin:24px auto 0}
.nr2-bco{margin-top:18px;position:relative;text-align:center;font-size:13px;color:#cbbf9f;line-height:1.8}
.bck-noir{display:flex;flex-direction:column;align-items:center}

/* ---- 6. EDITORIAL (rust + terracotta): lockup masthead ---- */
.cov-spine{background:#fdfaf5;overflow:hidden;display:block}
.emg-glow{position:absolute;inset:0;background:radial-gradient(circle at 18% 12%, rgba(243,199,172,.5), rgba(243,199,172,0) 45%)}
.emg-mast{position:relative;margin-top:52px;text-align:center}
.emg-logo{display:flex;justify-content:center}
.emg-logo .arch{width:236px;height:308px}
.emg-blogo .arch{width:200px;height:261px}
.emg-rule{height:2px;background:#b75e33;margin:18px 64px 0}
.emg-rule2{height:1px;margin-top:3px}
.emg-refline{display:flex;justify-content:space-between;margin:7px 64px 0;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#b75e33;font-weight:600}
.emg-kicker{margin:30px 64px 0;font-size:12px;letter-spacing:6px;text-transform:uppercase;color:#c27e62;font-weight:600;position:relative;text-align:left}
.emg-title{margin:12px 60px 0 64px;font-family:var(--f-head);font-style:italic;font-size:60px;line-height:1.08;color:#7a3a1c;font-weight:600;max-width:640px;position:relative;text-align:left}
.emg-title.ag{font-size:48px}
.emg-stand{margin:18px 64px 0;max-width:440px;font-size:16px;font-style:italic;color:#8a5a40;line-height:1.6;position:relative;text-align:left}
.emg-grid{position:absolute;left:64px;right:96px;bottom:118px;display:flex;gap:36px}
.emg-col{flex:1;border-top:2px solid #b75e33;padding-top:12px}
.emg-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#b75e33;font-weight:600}
.emg-val{font-size:14px;color:#4a3226;margin-top:8px;line-height:1.6}
.emg-gst{font-size:10px;font-style:italic;color:#8a5a40}
.emg-vert{position:absolute;right:-140px;top:50%;width:340px;margin-top:-8px;text-align:center;transform:rotate(90deg);font-size:10.5px;letter-spacing:5px;color:rgba(183,94,51,.55);white-space:nowrap}
.emg-foot{position:absolute;left:64px;right:64px;bottom:48px;display:flex;justify-content:space-between;font-size:11.5px;color:#8a5a40;letter-spacing:1px}
.emg-thanks{margin:34px 64px 0;font-family:var(--f-head);font-style:italic;font-size:52px;color:#7a3a1c;font-weight:600;text-align:left}
.emg-msg{margin:22px 64px 0;max-width:480px;font-size:15.5px;color:#6b4a38;line-height:1.85;text-align:left}
.emg-brule{width:200px;height:2px;background:#b75e33;margin:28px 64px 0}
.emg-bco{margin:14px 64px 0;font-size:13px;color:#8a5a40;text-align:left}

/* ---- 7. ARCH LINE (emerald + ivory) ---- */
.cov-band{background:linear-gradient(168deg,#0a6b50 0%,#06503c 55%,#03382a 100%);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.aln-glow{position:absolute;inset:0;background:radial-gradient(circle at 50% 34%, rgba(199,164,92,.22), rgba(199,164,92,0) 58%)}
.aln-kicker{margin-top:52px;position:relative}
.aln-arch{margin-top:20px;position:relative;width:368px;height:440px;border:2.5px solid rgba(216,180,102,.9);border-radius:184px 184px 0 0;display:flex;justify-content:center;align-items:flex-start}
.aln-logo{margin-top:42px}
.aln-logo .arch{width:272px;height:355px}
.aln-no{margin-top:14px;position:relative}
.aln-title{margin-top:16px;position:relative;font-family:var(--f-head);font-size:30px;letter-spacing:5px;text-transform:uppercase;color:#e9c96a;font-weight:600;text-align:center;padding:0 60px;line-height:1.3}
.aln-title.ag{font-size:26px}
.aln-orn{margin-top:14px;position:relative}
.aln-sub{margin-top:10px;position:relative;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:#f3eee1;text-align:center}
.aln-meta{margin-top:18px;position:relative;text-align:center;max-width:660px}
.aln-mrule{width:340px;height:1px;background:rgba(216,180,102,.8);margin:0 auto 12px}
.aln-mname{font-family:var(--f-head);font-size:23px;color:#f7f2e4;font-weight:600}
.aln-mline{font-size:12.5px;color:#e9e2cd;margin-top:5px}
.aln-mbud{margin-top:8px}
.aln-mgst{font-size:10px;font-style:italic;color:#e9e2cd;opacity:.8;margin-top:3px}
.aln-foot{position:absolute;bottom:42px;left:0;right:0;text-align:center;font-size:12px;color:#e9e2cd;letter-spacing:1px}
.bck-band{background:linear-gradient(168deg,#06503c 0%,#0a6b50 60%,#03382a 100%);display:flex;flex-direction:column;align-items:center;overflow:hidden}
.aln-barch{margin-top:130px;width:320px;height:390px;border-radius:160px 160px 0 0}
.aln-blogo{margin-top:38px}
.aln-blogo .arch{width:225px;height:294px}
.aln-thanks{margin-top:26px;position:relative;font-family:var(--f-head);font-size:32px;letter-spacing:5px;text-transform:uppercase;color:#e9c96a;font-weight:600}
.aln-msg{margin-top:18px;position:relative;max-width:460px;text-align:center;font-size:15px;color:#f3eee1;line-height:1.85}
.aln-bco{position:absolute;bottom:56px;left:0;right:0;text-align:center;font-size:13px;color:#e9e2cd}

/* ---- 8. SWISS GRID (powder blue + silver) ---- */
.cov-dream{background:#fff;overflow:hidden;display:block}
.swg-sq1{position:absolute;right:-40px;top:-40px;width:200px;height:200px;border:2px solid #a9c7ea}
.swg-sq2{position:absolute;right:70px;top:120px;width:90px;height:90px;border:1.5px solid #c3c8d2}
.swg-sq3{position:absolute;right:130px;top:70px;width:44px;height:44px;background:#a9c7ea}
.swg-sq4{position:absolute;left:-50px;bottom:-50px;width:180px;height:180px;border:2px solid #c3c8d2}
.swg-top{position:relative;display:flex;justify-content:space-between;align-items:flex-start;padding:56px 64px 0}
.swg-logo .arch{width:228px;height:298px}
.swg-no{font-family:'Poppins',sans-serif;font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#4a79b0;font-weight:600;margin-top:10px;text-align:right;max-width:280px}
.swg-body{position:static;padding:34px 64px 0}
.swg-kick{margin-bottom:14px}
.swg-title{font-family:'Poppins',sans-serif;font-weight:600;font-size:52px;line-height:1.12;color:#4a79b0;letter-spacing:-.5px;max-width:560px}
.swg-title.ag{font-size:43px}
.swg-rule{width:130px;height:3px;background:#c3c8d2;margin-top:24px}
.swg-sub{margin-top:18px;max-width:420px;font-family:'Poppins',sans-serif;font-weight:300;font-size:15.5px;color:#5a6a7a;line-height:1.6}
.swg-grid{position:absolute;left:64px;right:64px;bottom:126px;display:flex;gap:34px}
.swg-col{flex:1;border-top:2px solid #a9c7ea;padding-top:12px}
.swg-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:#4a79b0;font-weight:600;font-family:'Poppins',sans-serif}
.swg-val{font-size:14px;color:#33404f;margin-top:8px;line-height:1.6}
.swg-gst{font-size:10px;font-style:italic;color:#5a6a7a}
.swg-foot{position:absolute;left:64px;right:64px;bottom:48px;border-top:1px solid #c3c8d2;padding-top:14px;display:flex;justify-content:space-between;font-size:11.5px;color:#5a6a7a;letter-spacing:1px;font-family:'Poppins',sans-serif}
.swg-thanks{font-family:'Poppins',sans-serif;font-weight:600;font-size:46px;color:#4a79b0;margin-top:30px}
.swg-msg{margin-top:22px;max-width:460px;font-size:15.5px;color:#5a6a7a;line-height:1.8}
.bck-dream{background:#fff;overflow:hidden;display:block}

/* ---- v3 INNER PAGES: no filled boxes, line-based, per-language type ---- */
.lay-ivory .p-inner .band,.lay-ivory .p-inner .bandline,.lay-blush .p-inner .band,.lay-blush .p-inner .bandline,.lay-minimal .p-inner .band,.lay-minimal .p-inner .bandline,.lay-noir .p-inner .band,.lay-noir .p-inner .bandline,.lay-band .p-inner .band,.lay-band .p-inner .bandline,.lay-spine .p-inner .band,.lay-spine .p-inner .bandline,.lay-crest .p-inner .band,.lay-crest .p-inner .bandline,.lay-dream .p-inner .band,.lay-dream .p-inner .bandline{display:none}
.lay-ivory .p-inner .icard,.lay-blush .p-inner .icard,.lay-minimal .p-inner .icard,.lay-noir .p-inner .icard,.lay-band .p-inner .icard,.lay-spine .p-inner .icard,.lay-crest .p-inner .icard,.lay-dream .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-ivory .p-inner .icbar,.lay-blush .p-inner .icbar,.lay-minimal .p-inner .icbar,.lay-noir .p-inner .icbar,.lay-band .p-inner .icbar,.lay-spine .p-inner .icbar,.lay-crest .p-inner .icbar,.lay-dream .p-inner .icbar{display:none}
.lay-ivory .p-inner thead th,.lay-blush .p-inner thead th,.lay-minimal .p-inner thead th,.lay-noir .p-inner thead th,.lay-band .p-inner thead th,.lay-spine .p-inner thead th,.lay-crest .p-inner thead th,.lay-dream .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-ivory .p-inner tbody tr:nth-child(even) td,.lay-ivory .p-inner tbody tr:nth-child(odd) td,.lay-blush .p-inner tbody tr:nth-child(even) td,.lay-blush .p-inner tbody tr:nth-child(odd) td,.lay-minimal .p-inner tbody tr:nth-child(even) td,.lay-minimal .p-inner tbody tr:nth-child(odd) td,.lay-noir .p-inner tbody tr:nth-child(even) td,.lay-noir .p-inner tbody tr:nth-child(odd) td,.lay-band .p-inner tbody tr:nth-child(even) td,.lay-band .p-inner tbody tr:nth-child(odd) td,.lay-spine .p-inner tbody tr:nth-child(even) td,.lay-spine .p-inner tbody tr:nth-child(odd) td,.lay-crest .p-inner tbody tr:nth-child(even) td,.lay-crest .p-inner tbody tr:nth-child(odd) td,.lay-dream .p-inner tbody tr:nth-child(even) td,.lay-dream .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ivory: framed, gold hairlines, outline-circle numbers */
.lay-ivory .p-inner{background:#faf5e8}
.lay-ivory .p-inner .head{flex-direction:column;align-items:center;padding:52px 64px 0;gap:8px}
.lay-ivory .p-inner .head img{width:112px}
.lay-ivory .p-inner .headtxt{padding-top:0;text-align:center}
.lay-ivory .p-inner .ptitle{color:#7a6a34;font-style:normal;text-transform:uppercase;letter-spacing:4px;font-size:27px}
.lay-ivory .p-inner .prule{margin:10px auto 0}
.lay-ivory .p-inner .cards{margin-top:50px}
.lay-ivory .p-inner .icard{border-top:1.5px solid #c9a227}
.lay-ivory .p-inner .icard .txt{color:#4c4729}
.lay-ivory .p-inner thead th{color:#8a6d2f;border-bottom:2px solid #c9a227}
.lay-ivory .p-inner tbody td{border:none;border-bottom:1px solid #e6d9ae;color:#3d3a24}
.lay-ivory .p-inner .numc{background:none;border:1.5px solid #c9a227;color:#8a6d2f}
.lay-ivory .p-inner .footline{background:#c9a227}

/* maroon: centred heraldic, plain serif numbers */
.lay-crest .p-inner{background:#fbf7ef}
.lay-crest .p-inner .head{flex-direction:column;align-items:center;padding:50px 64px 0;gap:8px}
.lay-crest .p-inner .head img{width:112px}
.lay-crest .p-inner .headtxt{padding-top:0;text-align:center}
.lay-crest .p-inner .ptitle{color:#631c2e;font-style:italic;font-size:38px;text-transform:none;letter-spacing:0}
.lay-crest .p-inner .prule{margin:10px auto 0}
.lay-crest .p-inner .cards{margin-top:48px}
.lay-crest .p-inner .icard{border-top:1.5px solid #a52b3c;text-align:center}
.lay-crest .p-inner .icard .txt{color:#4a3540}
.lay-crest .p-inner thead th{color:#631c2e;border-bottom:2px solid #a52b3c}
.lay-crest .p-inner tbody td{border:none;border-bottom:1px solid #ecdcc0;color:#3d2b32}
.lay-crest .p-inner .numc{background:none;border:none;color:#631c2e;font-family:var(--f-head);font-weight:700;font-size:17px}
.lay-crest .p-inner .footline{background:#a52b3c}

/* sage split: sans light, vertical gradient hairline */
.lay-minimal .p-inner{background:#fff}
.lay-minimal .p-inner::before{content:'';position:absolute;left:34px;top:60px;bottom:60px;width:2px;background:linear-gradient(180deg,#84936a,#c6a96d);border:none}
.lay-minimal .p-inner::after{display:none}
.lay-minimal .p-inner .head{padding:56px 64px 0 64px;gap:20px}
.lay-minimal .p-inner .head img{width:96px}
.lay-minimal .p-inner .headtxt{padding-top:10px}
.lay-minimal .p-inner .ptitle{font-family:'Poppins',sans-serif;color:#44503a;font-weight:300;font-size:38px;text-transform:none;letter-spacing:0}
.lay-minimal .p-inner .cards{margin-top:52px}
.lay-minimal .p-inner .icard{border-top:2px solid #84936a}
.lay-minimal .p-inner .icard .txt{color:#4a5040}
.lay-minimal .p-inner thead th{font-family:'Poppins',sans-serif;color:#71805a;border-bottom:2px solid #84936a}
.lay-minimal .p-inner tbody td{border:none;border-bottom:1px solid #e3e8d8;color:#33392c}
.lay-minimal .p-inner .numc{background:#84936a;color:#fff;border-radius:0}
.lay-minimal .p-inner .footline{background:#84936a}

/* blush halo: soft, circle outlines only */
.lay-blush .p-inner{background:#fdf6f7}
.lay-blush .p-inner::before{content:'';position:absolute;width:300px;height:300px;border-radius:50%;border:1.5px solid #eccfd5;background:none;right:-110px;top:-120px}
.lay-blush .p-inner::after{content:'';position:absolute;width:220px;height:220px;border-radius:50%;border:1.5px solid #eccfd5;background:none;left:-90px;bottom:-80px}
.lay-blush .p-inner .head{flex-direction:column;align-items:center;padding:52px 64px 0;gap:8px}
.lay-blush .p-inner .head img{width:106px}
.lay-blush .p-inner .headtxt{padding-top:0;text-align:center}
.lay-blush .p-inner .ptitle{color:#a66479;font-style:italic;font-size:38px}
.lay-blush .p-inner .prule{margin:10px auto 0}
.lay-blush .p-inner .cards{margin-top:48px}
.lay-blush .p-inner .icard{border-top:1.5px solid #d9a3ad;text-align:center}
.lay-blush .p-inner .icard .txt{color:#6b4a52}
.lay-blush .p-inner thead th{color:#a66479;border-bottom:2px solid #d9a3ad}
.lay-blush .p-inner tbody td{border:none;border-bottom:1px solid #f3dde1;color:#4d2a34}
.lay-blush .p-inner .numc{background:#e8b7c0;color:#7c4653}
.lay-blush .p-inner .footline{background:#d9a3ad}

/* noir: black-white-gold, top double rule */
.lay-noir .p-inner{background:#fff}
.lay-noir .p-inner::before{content:'';position:absolute;top:0;left:0;right:0;height:10px;border-top:3px solid #111;border-bottom:1px solid #b98f3e}
.lay-noir .p-inner .head{padding:50px 76px 0 64px;gap:20px}
.lay-noir .p-inner .head img{width:94px}
.lay-noir .p-inner .headtxt{padding-top:10px}
.lay-noir .p-inner .ptitle{color:#111;font-style:normal;text-transform:uppercase;letter-spacing:3px;font-size:30px}
.lay-noir .p-inner .cards{margin-top:50px}
.lay-noir .p-inner .icard{border-top:2px solid #111}
.lay-noir .p-inner .icard .txt{color:#2e2a1c}
.lay-noir .p-inner thead th{color:#111;border-bottom:2.5px solid #111}
.lay-noir .p-inner tbody td{border:none;border-bottom:1px solid #e5ddc4;color:#241f10}
.lay-noir .p-inner .numc{background:none;border:1.5px solid #b98f3e;color:#8a6a20}
.lay-noir .p-inner .footline{background:#111}

/* emerald: arch outline behind logo, gold accents */
.lay-band .p-inner{background:#fdfcf7}
.lay-band .p-inner .head{flex-direction:column;align-items:center;padding:60px 64px 0;gap:8px;position:relative}
.lay-band .p-inner .head::before{content:'';position:absolute;left:50%;top:34px;transform:translateX(-50%);width:150px;height:170px;border:2px solid rgba(199,164,92,.65);border-radius:75px 75px 0 0;pointer-events:none}
.lay-band .p-inner .head img{width:106px;position:relative}
.lay-band .p-inner .headtxt{padding-top:0;text-align:center}
.lay-band .p-inner .ptitle{color:#06503c;font-style:normal;text-transform:uppercase;letter-spacing:3px;font-size:28px}
.lay-band .p-inner .prule{margin:10px auto 0}
.lay-band .p-inner .cards{margin-top:48px}
.lay-band .p-inner .icard{border-top:2px solid #c7a45c;text-align:center}
.lay-band .p-inner .icard .txt{color:#2c4038}
.lay-band .p-inner thead th{color:#06503c;border-bottom:2px solid #c7a45c}
.lay-band .p-inner tbody td{border:none;border-bottom:1px solid #e7e0c8;color:#23332c}
.lay-band .p-inner .numc{background:none;border:1.5px solid #06503c;color:#06503c;border-radius:0}
.lay-band .p-inner .footline{background:#06503c}

/* rust editorial: masthead double rule, italic title */
.lay-spine .p-inner{background:#fffdfb}
.lay-spine .p-inner .head{padding:50px 64px 14px;gap:20px;border-bottom:4px double #b75e33;margin:0 0 0}
.lay-spine .p-inner .head img{width:96px}
.lay-spine .p-inner .headtxt{padding-top:10px}
.lay-spine .p-inner .ptitle{color:#7a3a1c;font-style:italic;font-size:40px;text-transform:none;letter-spacing:0}
.lay-spine .p-inner .cards{margin-top:44px}
.lay-spine .p-inner .icard{border-top:2px solid #b75e33;border-left:none}
.lay-spine .p-inner .icard .txt{color:#4a3226}
.lay-spine .p-inner thead th{color:#b75e33;border-bottom:2px solid #b75e33}
.lay-spine .p-inner tbody td{border:none;border-bottom:1px solid #eddcc9;color:#3d2b20}
.lay-spine .p-inner .numc{background:none;border:none;color:#b75e33;font-family:var(--f-head);font-weight:700;font-size:17px}
.lay-spine .p-inner .footline{background:#b75e33}

/* swiss blue: sans, outlined geometry */
.lay-dream .p-inner{background:#fbfdff}
.lay-dream .p-inner::before{content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border:2px solid #dce8f6;background:none;border-radius:0}
.lay-dream .p-inner::after{display:none}
.lay-dream .p-inner .head{padding:56px 64px 0;gap:20px}
.lay-dream .p-inner .head img{width:94px}
.lay-dream .p-inner .headtxt{padding-top:10px}
.lay-dream .p-inner .ptitle{font-family:'Poppins',sans-serif;color:#4a79b0;font-weight:600;font-size:30px;text-transform:none;letter-spacing:0;font-style:normal}
.lay-dream .p-inner .prule{background:#c3c8d2}
.lay-dream .p-inner .cards{margin-top:52px}
.lay-dream .p-inner .icard{border-top:2px solid #a9c7ea}
.lay-dream .p-inner .icard .txt{color:#33404f}
.lay-dream .p-inner thead th{font-family:'Poppins',sans-serif;color:#4a79b0;border-bottom:2px solid #a9c7ea}
.lay-dream .p-inner tbody td{border:none;border-bottom:1px solid #dfe7f0;color:#33404f}
.lay-dream .p-inner .numc{background:none;border:1.5px solid #4a79b0;color:#4a79b0;border-radius:0}
.lay-dream .p-inner .footline{background:#a9c7ea}

/* ---- v3.1 fixes ---- */
.rhl-kicker{top:44px}
.rhl-no{top:70px}
.rhl-halo{top:110px}
.rhl-title{top:704px;color:#8a4258}
.rhl-dots{top:818px}
.rhl-sub{top:842px}
.vsp-panel{background:linear-gradient(165deg,#93a476 0%,#6d7d55 60%,#5a6944 100%)}
.vsp-logo::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:300px;height:340px;background:radial-gradient(circle, rgba(255,255,255,.35), rgba(255,255,255,0) 70%)}

/* ---- v3.2 fixes ---- */
.rhl-kicker,.rhl-no{display:flex;justify-content:center}
.swg-sq1{right:-50px;top:-50px;width:170px;height:170px}
.swg-sq2{right:56px;top:240px;width:80px;height:80px}
.swg-sq3{right:130px;top:250px;width:40px;height:40px}
.swg-no{margin-top:120px}

/* ================= GEN series batch 1 (g1-g6) ================= */
.p-cover.sk-light img.archlk-l,.p-back.sk-light img.archlk-l{display:block}
.p-cover.sk-light img.archlk-d,.p-back.sk-light img.archlk-d{display:none}
/* shared meta blocks (var-coloured) */
.gm-grid{position:absolute;display:flex;gap:34px}
.gm-col{flex:1;border-top:2px solid var(--acc);padding-top:12px}
.gm-lab{font-size:10.5px;letter-spacing:3px;text-transform:uppercase;color:var(--acc2);font-weight:600}
.gm-val{font-size:14px;color:var(--ink);margin-top:8px;line-height:1.6}
.gm-gst{font-size:10px;font-style:italic;color:var(--mut)}
.gm-cen{position:relative;text-align:center;max-width:620px;margin-left:auto;margin-right:auto}
.gm-hr{width:320px;height:1px;background:var(--acc);margin:10px auto}
.gm-cen .gm-lab{color:var(--acc2)}
.gm-name{font-family:var(--f-head);font-size:25px;color:var(--ink);font-weight:600;margin-top:6px}
.gm-line{font-size:12.5px;color:var(--mut);margin-top:5px}
.gm-bud{margin-top:8px;font-size:13.5px;letter-spacing:2px;text-transform:uppercase;color:var(--acc2);font-weight:700}
.gm-row{display:flex;gap:14px;padding:9px 0;border-top:1px solid var(--acc);min-width:320px}
.gm-rlab{font-size:10.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--acc2);font-weight:600;width:110px;flex-shrink:0;padding-top:2px}
.gm-rval{font-size:13.5px;color:var(--ink);line-height:1.5}

/* g1 CORNER: diagonal two-tone, logo top-left, italic title bottom-right, meta rows bottom-left */
.gk-corner{background:linear-gradient(118deg,var(--bg) 61%,var(--bg2) 61%)}
.gk-corner .gk-logo{position:absolute;left:64px;top:64px}
.gk-corner .gk-logo .arch{width:246px;height:321px}
.gk-corner .gk-kick{position:absolute;right:64px;top:78px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc);text-align:right;max-width:340px}
.gk-corner .gk-title{position:absolute;right:64px;bottom:330px;width:400px;text-align:right;font-family:var(--f-head);font-style:italic;font-size:50px;line-height:1.15;color:var(--ink);font-weight:600}
.gk-corner .gk-title.ag{font-size:42px}
.gk-corner .gk-sub{position:absolute;right:64px;bottom:270px;width:400px;text-align:right;font-family:var(--f-head);font-style:italic;font-size:15.5px;color:var(--mut)}
.gk-corner .gk-meta{position:absolute;left:64px;bottom:110px}
.gk-corner .gk-foot{position:absolute;bottom:46px;left:64px;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g2 TOPBAND: deep band top 47%, hero logo in band, light bottom */
.gk-topband{background:#fff}
.gk-topband .gk-band{position:absolute;top:0;left:0;right:0;height:528px;background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-topband .gk-bband{height:400px}
.gk-topband .gk-kick{position:absolute;left:0;right:0;top:40px;text-align:center;font-size:11px;letter-spacing:8px;text-transform:uppercase;color:var(--acc)}
.gk-topband .gk-logo{position:absolute;left:50%;top:80px;transform:translateX(-50%)}
.gk-topband .gk-logo .arch{width:250px;height:326px}
.gk-topband .gk-hr{position:absolute;left:50%;top:446px;transform:translateX(-50%);width:120px;height:2px;background:var(--acc)}
.gk-topband .gk-title{position:absolute;left:64px;right:64px;top:580px;text-align:center;font-family:var(--f-head);font-size:42px;color:var(--dink);font-weight:600;line-height:1.2}
.gk-topband .gk-title.ag{font-size:35px}
.gk-topband .gk-sub{position:absolute;left:0;right:0;top:672px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--acc2)}
.gk-topband .gm-grid{left:64px;right:64px;bottom:120px}
.gk-topband .gm-lab{color:var(--acc2)}
.gk-topband .gm-val{color:var(--dink)}
.gk-topband .gk-foot{position:absolute;left:64px;right:64px;bottom:48px;display:flex;justify-content:space-between;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g3 RAIL: light page, full-height right colour rail with vertical name */
.gk-rail{background:var(--bg)}
.gk-rail .gk-rrail{position:absolute;right:0;top:0;bottom:0;width:118px;background:linear-gradient(180deg,var(--acc),var(--acc2))}
.gk-rail .gk-vert{position:absolute;right:-141px;top:50%;width:400px;margin-top:-9px;text-align:center;transform:rotate(90deg);font-size:11px;letter-spacing:5px;color:rgba(255,255,255,.92);white-space:nowrap}
.gk-rail .gk-logo{position:absolute;left:76px;top:88px}
.gk-rail .gk-logo .arch{width:272px;height:355px}
.gk-rail .gk-kick{position:absolute;left:76px;top:482px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2)}
.gk-rail .gk-title{position:absolute;left:74px;top:512px;font-family:var(--f-head);font-size:48px;line-height:1.12;color:var(--ink);font-weight:600;max-width:470px}
.gk-rail .gk-title.ag{font-size:40px}
.gk-rail .gk-sub{position:absolute;left:76px;top:640px;max-width:400px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-rail .gm-grid{left:76px;right:190px;bottom:120px}
.gk-rail .gk-foot{position:absolute;left:76px;bottom:50px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g4 PILLAR: two accent pillar rules, centered classic stack */
.gk-pillar{background:linear-gradient(180deg,var(--bg),var(--bg2));display:flex;flex-direction:column;align-items:center}
.gk-pillar .gk-pl,.gk-pillar .gk-pr{position:absolute;top:56px;bottom:56px;width:3px;background:var(--acc)}
.gk-pillar .gk-pl{left:86px}
.gk-pillar .gk-pr{right:86px}
.gk-pillar .gk-kick{margin-top:62px;font-size:11px;letter-spacing:8px;text-transform:uppercase;color:var(--acc2);text-align:center}
.gk-pillar .gk-logo{margin-top:24px}
.gk-pillar .gk-logo .arch{width:292px;height:381px}
.gk-pillar .gk-title{margin-top:24px;font-family:var(--f-head);font-size:31px;letter-spacing:5px;text-transform:uppercase;color:var(--ink);font-weight:600;text-align:center;padding:0 60px;line-height:1.35}
.gk-pillar .gk-title.ag{font-size:26px}
.gk-pillar .gk-orn{margin-top:16px}
.gk-pillar .gk-sub{margin-top:12px;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut);text-align:center}
.gk-pillar .gm-cen{margin-top:20px}
.gk-pillar .gm-name{color:var(--ink)}
.gk-pillar .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g5 BIGARCH: giant line-art arch fills page, logo inside */
.gk-bigarch{background:linear-gradient(170deg,var(--bg),var(--bg2))}
.gk-bigarch .gk-a1{position:absolute;left:50%;top:130px;transform:translateX(-50%);width:600px;height:700px;border:2px solid var(--acc);border-radius:300px 300px 0 0;pointer-events:none}
.gk-bigarch .gk-a2{position:absolute;left:50%;top:148px;transform:translateX(-50%);width:564px;height:700px;border:1px solid var(--acc2);border-radius:282px 282px 0 0;pointer-events:none;opacity:.6}
.gk-bigarch .gk-kick{position:absolute;left:0;right:0;top:56px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-bigarch .gk-logo{position:absolute;left:50%;top:220px;transform:translateX(-50%)}
.gk-bigarch .gk-logo .arch{width:282px;height:368px}
.gk-bigarch .gk-title{position:absolute;left:60px;right:60px;top:640px;text-align:center;font-family:var(--f-head);font-size:38px;color:var(--ink);font-weight:600;line-height:1.25}
.gk-bigarch .gk-title.ag{font-size:32px}
.gk-bigarch .gk-sub{position:absolute;left:0;right:0;top:738px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-bigarch .gm-cen{position:absolute;left:80px;right:80px;bottom:110px}
.gk-bigarch .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}
.gk-bigarch .gk-ba1{top:170px;height:700px}
.gk-bigarch .gk-ba2{top:188px;height:700px}

/* g6 POSTERBOT: huge light type top, hairline meta, logo bottom-right */
.gk-posterbot{background:var(--bg)}
.gk-posterbot .gk-kick{position:absolute;left:64px;top:60px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2)}
.gk-posterbot .gk-title{position:absolute;left:60px;top:104px;font-family:'Poppins',sans-serif;font-weight:200;font-size:88px;line-height:1.03;color:var(--ink);letter-spacing:-2px;max-width:660px}
.gk-posterbot .gk-title.ag{font-size:68px;font-weight:300}
.gk-posterbot .gk-hr{position:absolute;left:64px;top:470px;width:120px;height:3px;background:var(--acc)}
.gk-posterbot .gk-sub{position:absolute;left:64px;top:502px;max-width:400px;font-family:'Poppins',sans-serif;font-weight:300;font-size:16px;color:var(--mut);line-height:1.6}
.gk-posterbot .gm-grid{left:64px;right:64px;bottom:300px}
.gk-posterbot .gk-logo{position:absolute;right:64px;bottom:56px}
.gk-posterbot .gk-logo .arch{width:186px;height:243px}
.gk-posterbot .gk-foot{position:absolute;left:64px;bottom:64px;font-size:11.5px;color:var(--mut);letter-spacing:1px;max-width:380px;line-height:1.6}

/* gen back covers */
.gkb-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding-top:150px}
.gkb-logo .arch{width:230px;height:300px}
.gkb-thanks{margin-top:30px;font-family:var(--f-head);font-style:italic;font-size:44px;color:var(--acc);font-weight:600}
.sk-light .gkb-thanks{color:var(--ink)}
.gkb-hr{width:140px;height:2px;background:var(--acc);margin-top:20px}
.gkb-msg{margin-top:22px;max-width:460px;text-align:center;font-size:15px;color:var(--ink);line-height:1.85}
.sk-light .gkb-msg{color:var(--mut)}
.gkb-co{position:absolute;bottom:56px;left:0;right:0;text-align:center;font-size:12.5px;color:var(--mut);letter-spacing:.5px}
.gk-corner .gk-cornerbg{position:absolute;inset:0;background:linear-gradient(118deg,var(--bg2) 39%,var(--bg) 39%)}
.gk-corner{background:linear-gradient(118deg,var(--bg) 61%,var(--bg2) 61%)}
.p-back.gk-corner{background:var(--bg)}

/* ---- GEN batch-1 inner pages ---- */

.lay-g1 .p-inner .band,.lay-g1 .p-inner .bandline,.lay-g2 .p-inner .band,.lay-g2 .p-inner .bandline,.lay-g3 .p-inner .band,.lay-g3 .p-inner .bandline,.lay-g4 .p-inner .band,.lay-g4 .p-inner .bandline,.lay-g5 .p-inner .band,.lay-g5 .p-inner .bandline,.lay-g6 .p-inner .band,.lay-g6 .p-inner .bandline{display:none}
.lay-g1 .p-inner .icard,.lay-g2 .p-inner .icard,.lay-g3 .p-inner .icard,.lay-g4 .p-inner .icard,.lay-g5 .p-inner .icard,.lay-g6 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g1 .p-inner .icbar,.lay-g2 .p-inner .icbar,.lay-g3 .p-inner .icbar,.lay-g4 .p-inner .icbar,.lay-g5 .p-inner .icbar,.lay-g6 .p-inner .icbar{display:none}
.lay-g1 .p-inner thead th,.lay-g2 .p-inner thead th,.lay-g3 .p-inner thead th,.lay-g4 .p-inner thead th,.lay-g5 .p-inner thead th,.lay-g6 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g1 .p-inner tbody tr:nth-child(even) td,.lay-g1 .p-inner tbody tr:nth-child(odd) td,.lay-g2 .p-inner tbody tr:nth-child(even) td,.lay-g2 .p-inner tbody tr:nth-child(odd) td,.lay-g3 .p-inner tbody tr:nth-child(even) td,.lay-g3 .p-inner tbody tr:nth-child(odd) td,.lay-g4 .p-inner tbody tr:nth-child(even) td,.lay-g4 .p-inner tbody tr:nth-child(odd) td,.lay-g5 .p-inner tbody tr:nth-child(even) td,.lay-g5 .p-inner tbody tr:nth-child(odd) td,.lay-g6 .p-inner tbody tr:nth-child(even) td,.lay-g6 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* g1 inner (clone of band) */
.lay-g1 .p-inner{background:#f4f5ee}
.lay-g1 .p-inner .head{flex-direction:column;align-items:center;padding:60px 64px 0;gap:8px;position:relative}
.lay-g1 .p-inner .head::before{content:'';position:absolute;left:50%;top:34px;transform:translateX(-50%);width:150px;height:170px;border:2px solid rgba(199,164,92,.65);border-radius:75px 75px 0 0;pointer-events:none}
.lay-g1 .p-inner .head img{width:106px;position:relative}
.lay-g1 .p-inner .headtxt{padding-top:0;text-align:center}
.lay-g1 .p-inner .ptitle{color:#0b4f46;font-style:normal;text-transform:uppercase;letter-spacing:3px;font-size:28px}
.lay-g1 .p-inner .prule{margin:10px auto 0}
.lay-g1 .p-inner .cards{margin-top:48px}
.lay-g1 .p-inner .icard{border-top:2px solid #c9a55e;text-align:center}
.lay-g1 .p-inner .icard .txt{color:#2c3a34}
.lay-g1 .p-inner thead th{color:#0b4f46;border-bottom:2px solid #c9a55e}
.lay-g1 .p-inner tbody td{border:none;border-bottom:1px solid #d8ddc8;color:#1d2e28}
.lay-g1 .p-inner .numc{background:none;border:1.5px solid #0b4f46;color:#0b4f46;border-radius:0}
.lay-g1 .p-inner .footline{background:#0b4f46}

/* g2 inner (clone of ivory) */
.lay-g2 .p-inner{background:#faf2ee}
.lay-g2 .p-inner .head{flex-direction:column;align-items:center;padding:52px 64px 0;gap:8px}
.lay-g2 .p-inner .head img{width:112px}
.lay-g2 .p-inner .headtxt{padding-top:0;text-align:center}
.lay-g2 .p-inner .ptitle{color:#6e1f33;font-style:normal;text-transform:uppercase;letter-spacing:4px;font-size:27px}
.lay-g2 .p-inner .prule{margin:10px auto 0}
.lay-g2 .p-inner .cards{margin-top:50px}
.lay-g2 .p-inner .icard{border-top:1.5px solid #d4a95c}
.lay-g2 .p-inner .icard .txt{color:#4a2b33}
.lay-g2 .p-inner thead th{color:#6e1f33;border-bottom:2px solid #d4a95c}
.lay-g2 .p-inner tbody td{border:none;border-bottom:1px solid #ecd2cc;color:#3d242c}
.lay-g2 .p-inner .numc{background:none;border:1.5px solid #d4a95c;color:#6e1f33}
.lay-g2 .p-inner .footline{background:#d4a95c}

/* g3 inner (clone of ivory) */
.lay-g3 .p-inner{background:#faf5e8}
.lay-g3 .p-inner .head{flex-direction:column;align-items:center;padding:52px 64px 0;gap:8px}
.lay-g3 .p-inner .head img{width:112px}
.lay-g3 .p-inner .headtxt{padding-top:0;text-align:center}
.lay-g3 .p-inner .ptitle{color:#4a3524;font-style:normal;text-transform:uppercase;letter-spacing:4px;font-size:27px}
.lay-g3 .p-inner .prule{margin:10px auto 0}
.lay-g3 .p-inner .cards{margin-top:50px}
.lay-g3 .p-inner .icard{border-top:1.5px solid #b28a4a}
.lay-g3 .p-inner .icard .txt{color:#4c4729}
.lay-g3 .p-inner thead th{color:#8a6a34;border-bottom:2px solid #b28a4a}
.lay-g3 .p-inner tbody td{border:none;border-bottom:1px solid #e6d9ae;color:#3d3a24}
.lay-g3 .p-inner .numc{background:none;border:1.5px solid #b28a4a;color:#8a6a34}
.lay-g3 .p-inner .footline{background:#b28a4a}

/* g4 inner (clone of blush) */
.lay-g4 .p-inner{background:#faf0ee}
.lay-g4 .p-inner::before{content:'';position:absolute;width:300px;height:300px;border-radius:50%;border:1.5px solid #e8c8bd;background:none;right:-110px;top:-120px}
.lay-g4 .p-inner::after{content:'';position:absolute;width:220px;height:220px;border-radius:50%;border:1.5px solid #e8c8bd;background:none;left:-90px;bottom:-80px}
.lay-g4 .p-inner .head{flex-direction:column;align-items:center;padding:52px 64px 0;gap:8px}
.lay-g4 .p-inner .head img{width:106px}
.lay-g4 .p-inner .headtxt{padding-top:0;text-align:center}
.lay-g4 .p-inner .ptitle{color:#8a4258;font-style:italic;font-size:38px}
.lay-g4 .p-inner .prule{margin:10px auto 0}
.lay-g4 .p-inner .cards{margin-top:48px}
.lay-g4 .p-inner .icard{border-top:1.5px solid #dba89a;text-align:center}
.lay-g4 .p-inner .icard .txt{color:#5e3a42}
.lay-g4 .p-inner thead th{color:#8a4258;border-bottom:2px solid #dba89a}
.lay-g4 .p-inner tbody td{border:none;border-bottom:1px solid #f2ddd6;color:#4a2a34}
.lay-g4 .p-inner .numc{background:#e6bdae;color:#572a3a}
.lay-g4 .p-inner .footline{background:#dba89a}

/* g5 inner (clone of dream) */
.lay-g5 .p-inner{background:#f4f7fb}
.lay-g5 .p-inner::before{content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border:2px solid #d3e0f0;background:none;border-radius:0}
.lay-g5 .p-inner::after{display:none}
.lay-g5 .p-inner .head{padding:56px 64px 0;gap:20px}
.lay-g5 .p-inner .head img{width:94px}
.lay-g5 .p-inner .headtxt{padding-top:10px}
.lay-g5 .p-inner .ptitle{font-family:'Poppins',sans-serif;color:#2c4a73;font-weight:600;font-size:30px;text-transform:none;letter-spacing:0;font-style:normal}
.lay-g5 .p-inner .prule{background:#c3c8d2}
.lay-g5 .p-inner .cards{margin-top:52px}
.lay-g5 .p-inner .icard{border-top:2px solid #7d9cc0}
.lay-g5 .p-inner .icard .txt{color:#26364c}
.lay-g5 .p-inner thead th{font-family:'Poppins',sans-serif;color:#2c4a73;border-bottom:2px solid #7d9cc0}
.lay-g5 .p-inner tbody td{border:none;border-bottom:1px solid #dde4ee;color:#26364c}
.lay-g5 .p-inner .numc{background:none;border:1.5px solid #2c4a73;color:#2c4a73;border-radius:0}
.lay-g5 .p-inner .footline{background:#7d9cc0}

/* g6 inner (clone of minimal) */
.lay-g6 .p-inner{background:#f6faf7}
.lay-g6 .p-inner::before{content:'';position:absolute;left:34px;top:60px;bottom:60px;width:2px;background:linear-gradient(180deg,#5e9c84,#88b8a4);border:none}
.lay-g6 .p-inner::after{display:none}
.lay-g6 .p-inner .head{padding:56px 64px 0 64px;gap:20px}
.lay-g6 .p-inner .head img{width:96px}
.lay-g6 .p-inner .headtxt{padding-top:10px}
.lay-g6 .p-inner .ptitle{font-family:'Poppins',sans-serif;color:#1d4a3c;font-weight:300;font-size:38px;text-transform:none;letter-spacing:0}
.lay-g6 .p-inner .cards{margin-top:52px}
.lay-g6 .p-inner .icard{border-top:2px solid #5e9c84}
.lay-g6 .p-inner .icard .txt{color:#3a5a50}
.lay-g6 .p-inner thead th{font-family:'Poppins',sans-serif;color:#4a8a72;border-bottom:2px solid #5e9c84}
.lay-g6 .p-inner tbody td{border:none;border-bottom:1px solid #d8eae2;color:#23403a}
.lay-g6 .p-inner .numc{background:#5e9c84;color:#fff;border-radius:0}
.lay-g6 .p-inner .footline{background:#5e9c84}

/* ---- GEN batch 2 (g7-g12) ---- */
/* g7 TICKET: vintage ticket, hairline rows top, dashed separator */
.gk-ticket{background:var(--bg)}
.gk-ticket .gk-toprow{position:absolute;top:44px;left:56px;right:56px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--acc2);border-top:1.5px solid var(--acc);border-bottom:1.5px solid var(--acc);padding:10px 0}
.gk-ticket .gk-logo{position:absolute;left:50%;top:150px;transform:translateX(-50%)}
.gk-ticket .gk-logo .arch{width:288px;height:376px}
.gk-ticket .gk-title{position:absolute;left:60px;right:60px;top:560px;text-align:center;font-family:var(--f-head);font-size:30px;letter-spacing:6px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.35}
.gk-ticket .gk-title.ag{font-size:25px}
.gk-ticket .gk-dsh{position:absolute;left:56px;right:56px;top:668px;border-top:1.5px dashed var(--acc)}
.gk-ticket .gk-sub{position:absolute;left:0;right:0;top:690px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-ticket .gm-grid{left:64px;right:64px;bottom:120px}
.gk-ticket .gk-foot{position:absolute;left:0;right:0;bottom:48px;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g8 SUNRISE: concentric arcs rising from bottom on dark field */
.gk-sunrise{background:linear-gradient(180deg,var(--bg),var(--bg2));overflow:hidden}
.gk-sunrise .gk-arc1,.gk-sunrise .gk-arc2,.gk-sunrise .gk-arc3{position:absolute;left:50%;transform:translateX(-50%);border-radius:50%;border:1.5px solid var(--acc);pointer-events:none}
.gk-sunrise .gk-arc1{width:680px;height:680px;bottom:-360px;opacity:.55}
.gk-sunrise .gk-arc2{width:880px;height:880px;bottom:-460px;opacity:.38}
.gk-sunrise .gk-arc3{width:1080px;height:1080px;bottom:-560px;opacity:.24}
.gk-sunrise .gk-kick{position:absolute;left:0;right:0;top:54px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-sunrise .gk-logo{position:absolute;left:50%;top:100px;transform:translateX(-50%)}
.gk-sunrise .gk-logo .arch{width:282px;height:368px}
.gk-sunrise .gk-title{position:absolute;left:60px;right:60px;top:510px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:46px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-sunrise .gk-title.ag{font-size:38px}
.gk-sunrise .gk-sub{position:absolute;left:0;right:0;top:622px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut)}
.gk-sunrise .gm-cen{position:absolute;left:80px;right:80px;bottom:96px}
.gk-sunrise .gk-foot{position:absolute;bottom:40px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g9 CHECKER: blueprint grid, outlined circle crest, bold sans */
.gk-checker{background:var(--bg);background-image:repeating-linear-gradient(0deg,var(--grid) 0 1px,transparent 1px 88px),repeating-linear-gradient(90deg,var(--grid) 0 1px,transparent 1px 88px)}
.gk-checker .gk-kick{position:absolute;left:0;right:0;top:70px;text-align:center;font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:7px;text-transform:uppercase;color:var(--acc2)}
.gk-checker .gk-circ{position:absolute;left:50%;top:130px;transform:translateX(-50%);width:400px;height:400px;border:2px solid var(--acc);border-radius:50%;background:var(--bg)}
.gk-checker .gk-logo{position:absolute;left:50%;top:172px;transform:translateX(-50%)}
.gk-checker .gk-logo .arch{width:256px;height:334px}
.gk-checker .gk-title{position:absolute;left:60px;right:60px;top:586px;text-align:center;font-family:'Poppins',sans-serif;font-weight:600;font-size:44px;color:var(--ink);line-height:1.15}
.gk-checker .gk-title.ag{font-size:36px}
.gk-checker .gk-sub{position:absolute;left:0;right:0;top:692px;text-align:center;font-family:'Poppins',sans-serif;font-weight:300;font-size:15.5px;color:var(--mut)}
.gk-checker .gm-grid{left:64px;right:64px;bottom:118px}
.gk-checker .gk-foot{position:absolute;left:0;right:0;bottom:46px;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px;font-family:'Poppins',sans-serif}

/* g10 OFFFRAME: thick top+left accent bars, thin bottom+right hairlines */
.gk-offframe{background:var(--bg)}
.gk-offframe .gk-fT{position:absolute;top:26px;left:26px;right:26px;height:12px;background:var(--acc)}
.gk-offframe .gk-fL{position:absolute;left:26px;top:26px;bottom:26px;width:12px;background:var(--acc)}
.gk-offframe .gk-fB{position:absolute;bottom:20px;left:20px;right:20px;height:1px;background:var(--acc2)}
.gk-offframe .gk-fR{position:absolute;right:20px;top:20px;bottom:20px;width:1px;background:var(--acc2)}
.gk-offframe .gk-logo{position:absolute;right:74px;top:92px}
.gk-offframe .gk-logo .arch{width:238px;height:311px}
.gk-offframe .gk-kick{position:absolute;left:78px;top:110px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:380px}
.gk-offframe .gk-title{position:absolute;left:74px;bottom:300px;font-family:var(--f-head);font-style:italic;font-size:54px;line-height:1.14;color:var(--ink);font-weight:600;max-width:400px}
.gk-offframe .gk-title.ag{font-size:44px}
.gk-offframe .gk-sub{position:absolute;left:78px;bottom:246px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);max-width:400px}
.gk-offframe .gm-grid{left:78px;right:74px;bottom:96px}
.gk-offframe .gk-foot{position:absolute;left:78px;bottom:44px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g11 CBAND: floating deep band across centre with title inside */
.gk-cband{background:var(--bg)}
.gk-cband .gk-kick{position:absolute;left:0;right:0;top:56px;text-align:center;font-size:11px;letter-spacing:8px;text-transform:uppercase;color:var(--acc2)}
.gk-cband .gk-logo{position:absolute;left:50%;top:104px;transform:translateX(-50%)}
.gk-cband .gk-logo .arch{width:258px;height:337px}
.gk-cband .gk-band{position:absolute;left:0;right:0;top:486px;height:290px;background:linear-gradient(180deg,#1d1d1f,var(--bg2))}
.gk-cband .gk-title{position:absolute;left:60px;right:60px;top:540px;text-align:center;font-family:var(--f-head);font-size:32px;letter-spacing:5px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.3}
.gk-cband .gk-title.ag{font-size:27px}
.gk-cband .gk-orn{position:absolute;left:50%;top:662px;transform:translateX(-50%)}
.gk-cband .gk-sub{position:absolute;left:0;right:0;top:696px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-cband .gm-grid{left:64px;right:64px;bottom:118px}
.gk-cband .gm-val{color:var(--dink)}
.gk-cband .gm-lab{color:var(--acc2)}
.gk-cband .gk-foot{position:absolute;left:0;right:0;bottom:46px;text-align:center;font-size:11.5px;color:var(--acc2);letter-spacing:1px}

/* g12 DUOCOLS: wide deep column left, vertical title, meta right */
.gk-duocols{background:var(--bg)}
.gk-duocols .gk-col{position:absolute;left:0;top:0;bottom:0;width:44%;background:linear-gradient(180deg,var(--bg2),var(--acc2))}
.gk-duocols .gk-logo{position:absolute;left:56px;top:88px}
.gk-duocols .gk-logo .arch{width:238px;height:311px}
.gk-duocols .gk-vtitle{position:absolute;left:60px;bottom:64px;transform:rotate(-90deg);transform-origin:left bottom;font-family:var(--f-head);font-size:42px;color:var(--ink);white-space:nowrap;letter-spacing:1px}
.gk-duocols .gk-right{position:absolute;left:50.5%;right:56px;top:150px}
.gk-duocols .gk-kick{font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc);margin-bottom:14px}
.gk-duocols .gk-sub{font-family:var(--f-head);font-style:italic;font-size:19px;color:var(--acc);margin-bottom:30px;line-height:1.5}
.gk-duocols .gm-row{border-top-color:var(--acc)}
.gk-duocols .gm-rlab{color:var(--acc2)}
.gk-duocols .gm-rval{color:var(--dink)}
.gk-duocols .gk-foot{position:absolute;left:50.5%;right:56px;bottom:56px;font-size:11.5px;color:var(--mut);letter-spacing:1px;line-height:1.7}

.lay-g7 .p-inner .band,.lay-g7 .p-inner .bandline,.lay-g8 .p-inner .band,.lay-g8 .p-inner .bandline,.lay-g9 .p-inner .band,.lay-g9 .p-inner .bandline,.lay-g10 .p-inner .band,.lay-g10 .p-inner .bandline,.lay-g11 .p-inner .band,.lay-g11 .p-inner .bandline,.lay-g12 .p-inner .band,.lay-g12 .p-inner .bandline{display:none}
.lay-g7 .p-inner .icard,.lay-g8 .p-inner .icard,.lay-g9 .p-inner .icard,.lay-g10 .p-inner .icard,.lay-g11 .p-inner .icard,.lay-g12 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g7 .p-inner .icbar,.lay-g8 .p-inner .icbar,.lay-g9 .p-inner .icbar,.lay-g10 .p-inner .icbar,.lay-g11 .p-inner .icbar,.lay-g12 .p-inner .icbar{display:none}
.lay-g7 .p-inner thead th,.lay-g8 .p-inner thead th,.lay-g9 .p-inner thead th,.lay-g10 .p-inner thead th,.lay-g11 .p-inner thead th,.lay-g12 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g7 .p-inner tbody tr:nth-child(even) td,.lay-g7 .p-inner tbody tr:nth-child(odd) td,.lay-g8 .p-inner tbody tr:nth-child(even) td,.lay-g8 .p-inner tbody tr:nth-child(odd) td,.lay-g9 .p-inner tbody tr:nth-child(even) td,.lay-g9 .p-inner tbody tr:nth-child(odd) td,.lay-g10 .p-inner tbody tr:nth-child(even) td,.lay-g10 .p-inner tbody tr:nth-child(odd) td,.lay-g11 .p-inner tbody tr:nth-child(even) td,.lay-g11 .p-inner tbody tr:nth-child(odd) td,.lay-g12 .p-inner tbody tr:nth-child(even) td,.lay-g12 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ---- GEN batch 3 (g13-g21) ---- */
/* g13 DIAGBAND: diagonal ribbons across a dark plum field */
.gk-diagband{background:linear-gradient(160deg,var(--bg),var(--bg2));overflow:hidden}
.gk-diagband .gk-db1{position:absolute;left:-300px;top:430px;width:1500px;height:200px;background:var(--acc2);opacity:.22;transform:rotate(-16deg);pointer-events:none}
.gk-diagband .gk-db2{position:absolute;left:-300px;top:762px;width:1500px;height:3px;background:var(--acc);opacity:.85;transform:rotate(-16deg);pointer-events:none}
.gk-diagband .gk-logo{position:absolute;left:64px;top:64px}
.gk-diagband .gk-logo .arch{width:250px;height:326px}
.gk-diagband .gk-kick{position:absolute;right:64px;top:84px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc);text-align:right;max-width:330px}
.gk-diagband .gk-title{position:absolute;right:64px;top:470px;width:430px;text-align:right;font-family:var(--f-head);font-size:48px;line-height:1.16;color:var(--ink);font-weight:600}
.gk-diagband .gk-title.ag{font-size:40px}
.gk-diagband .gk-sub{position:absolute;right:64px;top:640px;width:430px;text-align:right;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-diagband .gk-meta{position:absolute;left:64px;bottom:110px}
.gk-diagband .gk-foot{position:absolute;bottom:48px;left:64px;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g14 CORNERS: thin corner-bracket frame, centred formal stack */
.gk-corners{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-corners .gk-c1,.gk-corners .gk-c2,.gk-corners .gk-c3,.gk-corners .gk-c4{position:absolute;width:74px;height:74px;pointer-events:none}
.gk-corners .gk-c1{left:34px;top:34px;border-left:2px solid var(--acc);border-top:2px solid var(--acc)}
.gk-corners .gk-c2{right:34px;top:34px;border-right:2px solid var(--acc);border-top:2px solid var(--acc)}
.gk-corners .gk-c3{left:34px;bottom:34px;border-left:2px solid var(--acc);border-bottom:2px solid var(--acc)}
.gk-corners .gk-c4{right:34px;bottom:34px;border-right:2px solid var(--acc);border-bottom:2px solid var(--acc)}
.gk-corners .gk-kick{position:absolute;left:0;right:0;top:78px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-corners .gk-logo{position:absolute;left:50%;top:140px;transform:translateX(-50%)}
.gk-corners .gk-logo .arch{width:262px;height:342px}
.gk-corners .gk-title{position:absolute;left:80px;right:80px;top:530px;text-align:center;font-family:var(--f-head);font-size:36px;letter-spacing:4px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.3}
.gk-corners .gk-title.ag{font-size:30px}
.gk-corners .gk-orn{position:absolute;left:50%;top:648px;transform:translateX(-50%)}
.gk-corners .gk-sub{position:absolute;left:0;right:0;top:686px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-corners .gm-cen{position:absolute;left:90px;right:90px;bottom:112px}
.gk-corners .gk-foot{position:absolute;bottom:50px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g15 MONOGRAM: repeating BBTH watermark on soft mauve */
.gk-monogram{background:var(--bg);overflow:hidden}
.gk-monogram .gk-wm{position:absolute;left:-160px;top:-120px;width:1200px;transform:rotate(-20deg);opacity:.05;pointer-events:none}
.gk-monogram .gk-wmrow{white-space:nowrap;font-family:'Poppins',sans-serif;font-weight:800;font-size:64px;line-height:1.5;color:var(--dink)}
.gk-monogram .gk-wmrow span{margin-right:80px}
.gk-monogram .gk-kick{position:absolute;left:0;right:0;top:66px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-monogram .gk-logo{position:absolute;left:50%;top:120px;transform:translateX(-50%)}
.gk-monogram .gk-logo .arch{width:262px;height:342px}
.gk-monogram .gk-title{position:absolute;left:70px;right:70px;top:512px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:44px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-monogram .gk-title.ag{font-size:36px}
.gk-monogram .gk-sub{position:absolute;left:0;right:0;top:632px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut)}
.gk-monogram .gm-grid{left:64px;right:64px;bottom:120px}
.gk-monogram .gk-foot{position:absolute;bottom:46px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g16 INITIAL: giant ampersand watermark, editorial left-right split */
.gk-initial{background:var(--bg);overflow:hidden}
.gk-initial .gk-amp{position:absolute;right:-70px;bottom:-150px;font-family:var(--f-head);font-style:italic;font-size:640px;line-height:1;color:var(--acc);opacity:.15;pointer-events:none}
.gk-initial .gk-kick{position:absolute;left:70px;top:80px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:360px}
.gk-initial .gk-logo{position:absolute;right:70px;top:110px}
.gk-initial .gk-logo .arch{width:238px;height:311px}
.gk-initial .gk-title{position:absolute;left:66px;top:430px;font-family:var(--f-head);font-size:56px;line-height:1.12;color:var(--ink);font-weight:600;max-width:440px}
.gk-initial .gk-title.ag{font-size:46px}
.gk-initial .gk-hr{position:absolute;left:70px;top:640px;width:130px;height:3px;background:var(--acc)}
.gk-initial .gk-sub{position:absolute;left:70px;top:668px;max-width:400px;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut);line-height:1.55}
.gk-initial .gk-meta{position:absolute;left:70px;bottom:118px}
.gk-initial .gk-foot{position:absolute;left:70px;bottom:52px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g17 SIDEINDEX: narrow deep index column with vertical label */
.gk-sideindex{background:var(--bg)}
.gk-sideindex .gk-idx{position:absolute;left:0;top:0;bottom:0;width:98px;background:linear-gradient(180deg,var(--bg2),#5e440a)}
.gk-sideindex .gk-idxv{position:absolute;left:-147px;top:50%;width:400px;margin-top:-9px;text-align:center;transform:rotate(-90deg);font-size:11px;letter-spacing:5px;color:#f7ead0;white-space:nowrap}
.gk-sideindex .gk-idxd{position:absolute;left:44px;bottom:44px;width:10px;height:10px;background:var(--acc);transform:rotate(45deg)}
.gk-sideindex .gk-kick{position:absolute;left:146px;top:74px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:400px}
.gk-sideindex .gk-logo{position:absolute;left:146px;top:118px}
.gk-sideindex .gk-logo .arch{width:248px;height:324px}
.gk-sideindex .gk-title{position:absolute;left:142px;top:496px;font-family:var(--f-head);font-size:46px;line-height:1.14;color:var(--ink);font-weight:600;max-width:480px}
.gk-sideindex .gk-title.ag{font-size:38px}
.gk-sideindex .gk-sub{position:absolute;left:146px;top:646px;max-width:420px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);line-height:1.5}
.gk-sideindex .gk-meta{position:absolute;left:146px;bottom:112px}
.gk-sideindex .gk-foot{position:absolute;left:146px;bottom:48px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g18 ARCHTRIO: three standing line arches, crest in centre arch */
.gk-archtrio{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-archtrio .gk-at1,.gk-archtrio .gk-at2,.gk-archtrio .gk-at3{position:absolute;border:1.5px solid var(--acc);pointer-events:none}
.gk-archtrio .gk-at1{left:92px;top:230px;width:210px;height:600px;border-radius:105px 105px 0 0;border-color:var(--acc2);opacity:.55}
.gk-archtrio .gk-at2{left:50%;top:176px;transform:translateX(-50%);width:268px;height:654px;border-radius:134px 134px 0 0}
.gk-archtrio .gk-at3{right:92px;top:230px;width:210px;height:600px;border-radius:105px 105px 0 0;border-color:var(--acc2);opacity:.55}
.gk-archtrio .gk-kick{position:absolute;left:0;right:0;top:64px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-archtrio .gk-logo{position:absolute;left:50%;top:238px;transform:translateX(-50%)}
.gk-archtrio .gk-logo .arch{width:230px;height:300px}
.gk-archtrio .gk-title{position:absolute;left:70px;right:70px;top:600px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:40px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-archtrio .gk-title.ag{font-size:33px}
.gk-archtrio .gk-sub{position:absolute;left:0;right:0;top:712px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-archtrio .gm-cen{position:absolute;left:90px;right:90px;bottom:108px}
.gk-archtrio .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g19 MARQUEE: huge spaced display type on deep cocoa, crest at base */
.gk-marquee{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-marquee .gk-kick{position:absolute;left:0;right:0;top:66px;text-align:center;font-size:11px;letter-spacing:10px;text-transform:uppercase;color:var(--acc)}
.gk-marquee .gk-title{position:absolute;left:40px;right:40px;top:120px;text-align:center;font-family:var(--f-head);font-size:50px;letter-spacing:9px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.35}
.gk-marquee .gk-title.ag{font-size:40px;letter-spacing:6px}
.gk-marquee .gk-orn{position:absolute;left:50%;top:330px;transform:translateX(-50%)}
.gk-marquee .gk-sub{position:absolute;left:0;right:0;top:368px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--mut)}
.gk-marquee .gm-cen{position:absolute;left:90px;right:90px;top:430px}
.gk-marquee .gk-logo{position:absolute;left:50%;bottom:104px;transform:translateX(-50%)}
.gk-marquee .gk-logo .arch{width:236px;height:308px}
.gk-marquee .gk-foot{position:absolute;bottom:46px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g20 STEPS: editorial split with numbered meta steps on the right */
.gk-steps{background:var(--bg)}
.gk-steps .gk-kick{position:absolute;left:64px;top:64px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:380px}
.gk-steps .gk-logo{position:absolute;left:64px;top:116px}
.gk-steps .gk-logo .arch{width:244px;height:319px}
.gk-steps .gk-title{position:absolute;left:60px;top:486px;font-family:var(--f-head);font-style:italic;font-size:50px;line-height:1.14;color:var(--ink);font-weight:600;max-width:400px}
.gk-steps .gk-title.ag{font-size:41px}
.gk-steps .gk-sub{position:absolute;left:64px;top:666px;max-width:380px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);line-height:1.5}
.gk-steps .gk-steps{position:absolute;right:56px;top:210px;width:302px}
.gk-steps .gk-step{display:flex;gap:18px;border-top:1.5px solid var(--acc);padding:16px 0;margin-bottom:22px}
.gk-steps .gk-snum{font-family:var(--f-head);font-size:32px;line-height:1;color:var(--acc2);font-weight:600}
.gk-steps .gk-sval{font-size:13.5px;color:var(--dink);line-height:1.55;margin-top:6px}
.gk-steps .gk-foot{position:absolute;left:64px;bottom:46px;font-size:11.5px;color:var(--mut);letter-spacing:1px;max-width:380px;line-height:1.6}

/* g21 SUNBURST: radiating line burst from base on graphite */
.gk-sunburst{background:linear-gradient(180deg,var(--bg),var(--bg2));overflow:hidden}
.gk-sunburst .gk-rays{position:absolute;left:50%;bottom:0;width:0;height:0;pointer-events:none}
.gk-sunburst .gk-ray{position:absolute;left:0;bottom:0;width:1.5px;height:860px;transform-origin:50% 100%;background:linear-gradient(180deg,transparent,var(--acc));opacity:.2}
.gk-sunburst .gk-kick{position:absolute;left:0;right:0;top:60px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-sunburst .gk-logo{position:absolute;left:50%;top:120px;transform:translateX(-50%)}
.gk-sunburst .gk-logo .arch{width:262px;height:342px}
.gk-sunburst .gk-title{position:absolute;left:70px;right:70px;top:516px;text-align:center;font-family:var(--f-head);font-size:38px;letter-spacing:3px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.3}
.gk-sunburst .gk-title.ag{font-size:32px}
.gk-sunburst .gk-sub{position:absolute;left:0;right:0;top:660px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-sunburst .gm-cen{position:absolute;left:90px;right:90px;bottom:110px}
.gk-sunburst .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g13-g21 inner pages: universal box-free reset */
.lay-g13 .p-inner .band,.lay-g13 .p-inner .bandline,.lay-g14 .p-inner .band,.lay-g14 .p-inner .bandline,.lay-g15 .p-inner .band,.lay-g15 .p-inner .bandline,.lay-g16 .p-inner .band,.lay-g16 .p-inner .bandline,.lay-g17 .p-inner .band,.lay-g17 .p-inner .bandline,.lay-g18 .p-inner .band,.lay-g18 .p-inner .bandline,.lay-g19 .p-inner .band,.lay-g19 .p-inner .bandline,.lay-g20 .p-inner .band,.lay-g20 .p-inner .bandline,.lay-g21 .p-inner .band,.lay-g21 .p-inner .bandline{display:none}
.lay-g13 .p-inner .icard,.lay-g14 .p-inner .icard,.lay-g15 .p-inner .icard,.lay-g16 .p-inner .icard,.lay-g17 .p-inner .icard,.lay-g18 .p-inner .icard,.lay-g19 .p-inner .icard,.lay-g20 .p-inner .icard,.lay-g21 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g13 .p-inner .icbar,.lay-g14 .p-inner .icbar,.lay-g15 .p-inner .icbar,.lay-g16 .p-inner .icbar,.lay-g17 .p-inner .icbar,.lay-g18 .p-inner .icbar,.lay-g19 .p-inner .icbar,.lay-g20 .p-inner .icbar,.lay-g21 .p-inner .icbar{display:none}
.lay-g13 .p-inner thead th,.lay-g14 .p-inner thead th,.lay-g15 .p-inner thead th,.lay-g16 .p-inner thead th,.lay-g17 .p-inner thead th,.lay-g18 .p-inner thead th,.lay-g19 .p-inner thead th,.lay-g20 .p-inner thead th,.lay-g21 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g13 .p-inner tbody tr:nth-child(even) td,.lay-g13 .p-inner tbody tr:nth-child(odd) td,.lay-g14 .p-inner tbody tr:nth-child(even) td,.lay-g14 .p-inner tbody tr:nth-child(odd) td,.lay-g15 .p-inner tbody tr:nth-child(even) td,.lay-g15 .p-inner tbody tr:nth-child(odd) td,.lay-g16 .p-inner tbody tr:nth-child(even) td,.lay-g16 .p-inner tbody tr:nth-child(odd) td,.lay-g17 .p-inner tbody tr:nth-child(even) td,.lay-g17 .p-inner tbody tr:nth-child(odd) td,.lay-g18 .p-inner tbody tr:nth-child(even) td,.lay-g18 .p-inner tbody tr:nth-child(odd) td,.lay-g19 .p-inner tbody tr:nth-child(even) td,.lay-g19 .p-inner tbody tr:nth-child(odd) td,.lay-g20 .p-inner tbody tr:nth-child(even) td,.lay-g20 .p-inner tbody tr:nth-child(odd) td,.lay-g21 .p-inner tbody tr:nth-child(even) td,.lay-g21 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ---- GEN batch 4 (g22-g27) ---- */
/* g22 BOTBAND: light top, deep band at base carrying meta */
.gk-botband{background:var(--bg)}
.gk-botband .gk-kick{position:absolute;left:0;right:0;top:60px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-botband .gk-logo{position:absolute;left:50%;top:112px;transform:translateX(-50%)}
.gk-botband .gk-logo .arch{width:256px;height:334px}
.gk-botband .gk-title{position:absolute;left:70px;right:70px;top:490px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:44px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-botband .gk-title.ag{font-size:36px}
.gk-botband .gk-sub{position:absolute;left:0;right:0;top:610px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut)}
.gk-botband .gk-bband2{position:absolute;left:0;right:0;bottom:0;height:320px;background:linear-gradient(180deg,var(--bg2),#4a3a5c)}
.gk-botband .gm-grid{left:64px;right:64px;bottom:120px}
.gk-botband .gm-col{border-top-color:var(--acc)}
.gk-botband .gm-lab{color:var(--acc)}
.gk-botband .gm-val{color:#f4eef8}
.gk-botband .gm-gst{color:#cbb8dd}
.gk-botband .gk-foot{position:absolute;left:0;right:0;bottom:48px;text-align:center;font-size:11.5px;color:#cbb8dd;letter-spacing:1px}

/* g23 ORBIT: thin gold orbit ring on midnight */
.gk-orbit{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-orbit .gk-orb{position:absolute;left:50%;top:280px;transform:translateX(-50%);width:560px;height:560px;border:1.5px solid var(--acc);border-radius:50%;pointer-events:none}
.gk-orbit .gk-orb2{position:absolute;left:50%;top:264px;transform:translateX(-50%);width:592px;height:592px;border:1px solid var(--acc2);border-radius:50%;opacity:.45;pointer-events:none}
.gk-orbit .gk-kick{position:absolute;left:0;right:0;top:76px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-orbit .gk-logo{position:absolute;left:50%;top:150px;transform:translateX(-50%)}
.gk-orbit .gk-logo .arch{width:252px;height:329px}
.gk-orbit .gk-title{position:absolute;left:60px;right:60px;top:560px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:44px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-orbit .gk-title.ag{font-size:36px}
.gk-orbit .gk-sub{position:absolute;left:0;right:0;top:680px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut)}
.gk-orbit .gm-cen{position:absolute;left:90px;right:90px;bottom:104px}
.gk-orbit .gk-foot{position:absolute;bottom:42px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g24 STACKED: huge stacked serif type poster */
.gk-stacked{background:var(--bg)}
.gk-stacked .gk-kick{position:absolute;left:64px;top:64px;font-size:11px;letter-spacing:7px;text-transform:uppercase;color:var(--acc2);max-width:400px}
.gk-stacked .gk-title{position:absolute;left:58px;top:120px;font-family:var(--f-head);font-size:80px;line-height:1.06;color:var(--ink);font-weight:700;max-width:620px}
.gk-stacked .gk-title.ag{font-size:64px}
.gk-stacked .gk-hr{position:absolute;left:64px;top:470px;width:140px;height:3px;background:var(--acc)}
.gk-stacked .gk-sub{position:absolute;left:64px;top:498px;max-width:420px;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--mut);line-height:1.5}
.gk-stacked .gk-meta{position:absolute;left:64px;bottom:120px}
.gk-stacked .gk-logo{position:absolute;right:60px;bottom:96px}
.gk-stacked .gk-logo .arch{width:188px;height:245px}
.gk-stacked .gk-foot{position:absolute;left:64px;bottom:56px;font-size:11.5px;color:var(--mut);letter-spacing:1px;max-width:360px;line-height:1.6}

/* g25 FRAME2: double hairline gallery frame, monochrome */
.gk-frame2{background:var(--bg)}
.gk-frame2 .gk-fr1{position:absolute;left:34px;top:34px;right:34px;bottom:34px;border:2px solid var(--acc);pointer-events:none}
.gk-frame2 .gk-fr2{position:absolute;left:46px;top:46px;right:46px;bottom:46px;border:1px solid var(--acc2);pointer-events:none}
.gk-frame2 .gk-kick{position:absolute;left:0;right:0;top:84px;text-align:center;font-size:11px;letter-spacing:10px;text-transform:uppercase;color:var(--acc2)}
.gk-frame2 .gk-logo{position:absolute;left:50%;top:150px;transform:translateX(-50%)}
.gk-frame2 .gk-logo .arch{width:258px;height:337px}
.gk-frame2 .gk-title{position:absolute;left:80px;right:80px;top:540px;text-align:center;font-family:var(--f-head);font-size:33px;letter-spacing:6px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.35}
.gk-frame2 .gk-title.ag{font-size:28px}
.gk-frame2 .gk-orn{position:absolute;left:50%;top:656px;transform:translateX(-50%)}
.gk-frame2 .gk-sub{position:absolute;left:0;right:0;top:694px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-frame2 .gm-cen{position:absolute;left:100px;right:100px;bottom:118px}
.gk-frame2 .gm-hr{background:var(--acc2)}
.gk-frame2 .gk-foot{position:absolute;bottom:56px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g26 SIDEBAR-R: narrow deep right panel with vertical label */
.gk-sidebar-r{background:var(--bg)}
.gk-sidebar-r .gk-sb{position:absolute;right:0;top:0;bottom:0;width:148px;background:linear-gradient(180deg,var(--bg2),#142c21)}
.gk-sidebar-r .gk-sbv{position:absolute;left:-121px;top:50%;width:390px;margin-top:-9px;text-align:center;transform:rotate(-90deg);font-size:11px;letter-spacing:5px;color:#e8dcc0;white-space:nowrap}
.gk-sidebar-r .gk-kick{position:absolute;left:64px;top:76px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:400px}
.gk-sidebar-r .gk-logo{position:absolute;left:64px;top:124px}
.gk-sidebar-r .gk-logo .arch{width:246px;height:321px}
.gk-sidebar-r .gk-title{position:absolute;left:60px;top:502px;font-family:var(--f-head);font-size:45px;line-height:1.14;color:var(--ink);font-weight:600;max-width:430px}
.gk-sidebar-r .gk-title.ag{font-size:37px}
.gk-sidebar-r .gk-sub{position:absolute;left:64px;top:664px;max-width:400px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);line-height:1.5}
.gk-sidebar-r .gm-grid{left:64px;right:200px;bottom:118px}
.gk-sidebar-r .gk-foot{position:absolute;left:64px;bottom:48px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g27 STRIPES: diagonal pinstripe bands top and bottom */
.gk-stripes{background:var(--bg)}
.gk-stripes .gk-st1{position:absolute;top:0;left:0;right:0;height:30px;background:repeating-linear-gradient(45deg,var(--acc) 0 5px,transparent 5px 16px)}
.gk-stripes .gk-st2{position:absolute;bottom:0;left:0;right:0;height:30px;background:repeating-linear-gradient(-45deg,var(--acc) 0 5px,transparent 5px 16px)}
.gk-stripes .gk-kick{position:absolute;left:0;right:0;top:78px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-stripes .gk-logo{position:absolute;left:50%;top:142px;transform:translateX(-50%)}
.gk-stripes .gk-logo .arch{width:260px;height:340px}
.gk-stripes .gk-title{position:absolute;left:70px;right:70px;top:536px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:42px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-stripes .gk-title.ag{font-size:34px}
.gk-stripes .gk-sub{position:absolute;left:0;right:0;top:652px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-stripes .gm-grid{left:64px;right:64px;bottom:126px}
.gk-stripes .gk-foot{position:absolute;left:0;right:0;bottom:54px;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g22-g27 inner pages: universal box-free reset */
.lay-g22 .p-inner .band,.lay-g22 .p-inner .bandline,.lay-g23 .p-inner .band,.lay-g23 .p-inner .bandline,.lay-g24 .p-inner .band,.lay-g24 .p-inner .bandline,.lay-g25 .p-inner .band,.lay-g25 .p-inner .bandline,.lay-g26 .p-inner .band,.lay-g26 .p-inner .bandline,.lay-g27 .p-inner .band,.lay-g27 .p-inner .bandline{display:none}
.lay-g22 .p-inner .icard,.lay-g23 .p-inner .icard,.lay-g24 .p-inner .icard,.lay-g25 .p-inner .icard,.lay-g26 .p-inner .icard,.lay-g27 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g22 .p-inner .icbar,.lay-g23 .p-inner .icbar,.lay-g24 .p-inner .icbar,.lay-g25 .p-inner .icbar,.lay-g26 .p-inner .icbar,.lay-g27 .p-inner .icbar{display:none}
.lay-g22 .p-inner thead th,.lay-g23 .p-inner thead th,.lay-g24 .p-inner thead th,.lay-g25 .p-inner thead th,.lay-g26 .p-inner thead th,.lay-g27 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g22 .p-inner tbody tr:nth-child(even) td,.lay-g22 .p-inner tbody tr:nth-child(odd) td,.lay-g23 .p-inner tbody tr:nth-child(even) td,.lay-g23 .p-inner tbody tr:nth-child(odd) td,.lay-g24 .p-inner tbody tr:nth-child(even) td,.lay-g24 .p-inner tbody tr:nth-child(odd) td,.lay-g25 .p-inner tbody tr:nth-child(even) td,.lay-g25 .p-inner tbody tr:nth-child(odd) td,.lay-g26 .p-inner tbody tr:nth-child(even) td,.lay-g26 .p-inner tbody tr:nth-child(odd) td,.lay-g27 .p-inner tbody tr:nth-child(even) td,.lay-g27 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ---- GEN batch 5 (g28-g33) ---- */
/* g28 DOTS: halftone dot field corner, bold sans editorial */
.gk-dots{background:var(--bg)}
.gk-dots .gk-dotf{position:absolute;right:-30px;top:-30px;width:430px;height:430px;background-image:radial-gradient(circle,var(--acc) 1.6px,transparent 1.7px);background-size:24px 24px;opacity:.5;pointer-events:none}
.gk-dots .gk-kick{position:absolute;left:64px;top:66px;font-family:'Poppins',sans-serif;font-size:11px;letter-spacing:7px;text-transform:uppercase;color:var(--acc2);max-width:380px}
.gk-dots .gk-logo{position:absolute;left:64px;top:120px}
.gk-dots .gk-logo .arch{width:242px;height:316px}
.gk-dots .gk-title{position:absolute;left:60px;top:520px;font-family:'Poppins',sans-serif;font-weight:600;font-size:52px;line-height:1.12;color:var(--ink);max-width:600px}
.gk-dots .gk-title.ag{font-size:43px}
.gk-dots .gk-hr{position:absolute;left:64px;top:700px;width:130px;height:3px;background:var(--acc)}
.gk-dots .gk-sub{position:absolute;left:64px;top:728px;max-width:420px;font-family:'Poppins',sans-serif;font-weight:300;font-size:15.5px;color:var(--mut);line-height:1.55}
.gk-dots .gk-meta{position:absolute;left:64px;bottom:118px}
.gk-dots .gk-foot{position:absolute;left:64px;bottom:52px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g29 VEE: converging chevron lines, royal purple */
.gk-vee{background:linear-gradient(180deg,var(--bg),var(--bg2));overflow:hidden}
.gk-vee .gk-v1,.gk-vee .gk-v2,.gk-vee .gk-v3,.gk-vee .gk-v4{position:absolute;width:900px;height:1.5px;background:var(--acc);pointer-events:none}
.gk-vee .gk-v1{left:-140px;top:268px;transform:rotate(24deg);opacity:.75}
.gk-vee .gk-v2{right:-140px;top:268px;transform:rotate(-24deg);opacity:.75}
.gk-vee .gk-v3{left:-140px;top:234px;transform:rotate(24deg);opacity:.35}
.gk-vee .gk-v4{right:-140px;top:234px;transform:rotate(-24deg);opacity:.35}
.gk-vee .gk-kick{position:absolute;left:0;right:0;top:66px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-vee .gk-logo{position:absolute;left:50%;top:130px;transform:translateX(-50%)}
.gk-vee .gk-logo .arch{width:256px;height:334px}
.gk-vee .gk-title{position:absolute;left:60px;right:60px;top:560px;text-align:center;font-family:var(--f-head);font-size:40px;color:var(--ink);font-weight:600;line-height:1.25}
.gk-vee .gk-title.ag{font-size:33px}
.gk-vee .gk-sub{position:absolute;left:0;right:0;top:680px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16.5px;color:var(--mut)}
.gk-vee .gm-cen{position:absolute;left:90px;right:90px;bottom:108px}
.gk-vee .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g30 BIGBOTTOM: crest top, huge title anchored at base */
.gk-bigbottom{background:var(--bg)}
.gk-bigbottom .gk-kick{position:absolute;left:0;right:0;top:58px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-bigbottom .gk-logo{position:absolute;left:50%;top:110px;transform:translateX(-50%)}
.gk-bigbottom .gk-logo .arch{width:264px;height:345px}
.gk-bigbottom .gm-cen{position:absolute;left:90px;right:90px;top:500px}
.gk-bigbottom .gm-hr{background:var(--acc)}
.gk-bigbottom .gk-sub{position:absolute;left:0;right:0;bottom:262px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--mut)}
.gk-bigbottom .gk-title{position:absolute;left:40px;right:40px;bottom:104px;text-align:center;font-family:var(--f-head);font-size:56px;letter-spacing:2px;text-transform:uppercase;color:var(--ink);font-weight:700;line-height:1.15}
.gk-bigbottom .gk-title.ag{font-size:44px}
.gk-bigbottom .gk-foot{position:absolute;bottom:48px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g31 QUARTERS: crosshair quarter hairlines, warm stone */
.gk-quarters{background:var(--bg)}
.gk-quarters .gk-qv{position:absolute;left:50%;top:56px;bottom:56px;width:1px;background:var(--acc);opacity:.45;pointer-events:none}
.gk-quarters .gk-qh{position:absolute;top:50%;left:56px;right:56px;height:1px;background:var(--acc);opacity:.45;pointer-events:none}
.gk-quarters .gk-kick{position:absolute;left:0;right:0;top:74px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-quarters .gk-logo{position:absolute;left:50%;top:130px;transform:translateX(-50%)}
.gk-quarters .gk-logo .arch{width:252px;height:329px}
.gk-quarters .gk-title{position:absolute;left:70px;right:70px;top:530px;text-align:center;font-family:var(--f-head);font-size:36px;letter-spacing:4px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.3}
.gk-quarters .gk-title.ag{font-size:30px}
.gk-quarters .gk-orn{position:absolute;left:50%;top:650px;transform:translateX(-50%)}
.gk-quarters .gk-sub{position:absolute;left:0;right:0;top:688px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-quarters .gm-cen{position:absolute;left:100px;right:100px;bottom:116px}
.gk-quarters .gk-foot{position:absolute;bottom:54px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g32 CROSSBAND: full-page diagonal cross on dark aubergine */
.gk-crossband{background:linear-gradient(160deg,var(--bg),var(--bg2));overflow:hidden}
.gk-crossband .gk-x1{position:absolute;left:-160px;top:50%;width:1200px;height:1.5px;background:var(--acc);opacity:.6;transform:rotate(32deg);pointer-events:none}
.gk-crossband .gk-x2{position:absolute;left:-160px;top:50%;width:1200px;height:1.5px;background:var(--acc2);opacity:.6;transform:rotate(-32deg);pointer-events:none}
.gk-crossband .gk-kick{position:absolute;left:0;right:0;top:64px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-crossband .gk-logo{position:absolute;left:50%;top:150px;transform:translateX(-50%)}
.gk-crossband .gk-logo .arch{width:262px;height:342px}
.gk-crossband .gk-title{position:absolute;left:60px;right:60px;top:590px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:42px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-crossband .gk-title.ag{font-size:34px}
.gk-crossband .gk-sub{position:absolute;left:0;right:0;top:706px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-crossband .gm-cen{position:absolute;left:90px;right:90px;bottom:108px}
.gk-crossband .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g33 ZEN: airy white minimal, huge centred type */
.gk-zen{background:var(--bg)}
.gk-zen .gk-kick{position:absolute;left:0;right:0;top:88px;text-align:center;font-size:10.5px;letter-spacing:12px;text-transform:uppercase;color:var(--acc2)}
.gk-zen .gk-title{position:absolute;left:50px;right:50px;top:200px;text-align:center;font-family:var(--f-head);font-size:58px;color:var(--ink);font-weight:600;line-height:1.25}
.gk-zen .gk-title.ag{font-size:46px}
.gk-zen .gk-orn{position:absolute;left:50%;top:396px;transform:translateX(-50%)}
.gk-zen .gk-sub{position:absolute;left:0;right:0;top:434px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--mut)}
.gk-zen .gk-logo{position:absolute;left:50%;top:520px;transform:translateX(-50%)}
.gk-zen .gk-logo .arch{width:230px;height:300px}
.gk-zen .gm-cen{position:absolute;left:100px;right:100px;bottom:112px}
.gk-zen .gm-hr{background:var(--acc)}
.gk-zen .gk-foot{position:absolute;bottom:50px;left:0;right:0;text-align:center;font-size:10.5px;color:var(--mut);letter-spacing:2px}

/* g28-g33 inner pages: universal box-free reset */
.lay-g28 .p-inner .band,.lay-g28 .p-inner .bandline,.lay-g29 .p-inner .band,.lay-g29 .p-inner .bandline,.lay-g30 .p-inner .band,.lay-g30 .p-inner .bandline,.lay-g31 .p-inner .band,.lay-g31 .p-inner .bandline,.lay-g32 .p-inner .band,.lay-g32 .p-inner .bandline,.lay-g33 .p-inner .band,.lay-g33 .p-inner .bandline{display:none}
.lay-g28 .p-inner .icard,.lay-g29 .p-inner .icard,.lay-g30 .p-inner .icard,.lay-g31 .p-inner .icard,.lay-g32 .p-inner .icard,.lay-g33 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g28 .p-inner .icbar,.lay-g29 .p-inner .icbar,.lay-g30 .p-inner .icbar,.lay-g31 .p-inner .icbar,.lay-g32 .p-inner .icbar,.lay-g33 .p-inner .icbar{display:none}
.lay-g28 .p-inner thead th,.lay-g29 .p-inner thead th,.lay-g30 .p-inner thead th,.lay-g31 .p-inner thead th,.lay-g32 .p-inner thead th,.lay-g33 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g28 .p-inner tbody tr:nth-child(even) td,.lay-g28 .p-inner tbody tr:nth-child(odd) td,.lay-g29 .p-inner tbody tr:nth-child(even) td,.lay-g29 .p-inner tbody tr:nth-child(odd) td,.lay-g30 .p-inner tbody tr:nth-child(even) td,.lay-g30 .p-inner tbody tr:nth-child(odd) td,.lay-g31 .p-inner tbody tr:nth-child(even) td,.lay-g31 .p-inner tbody tr:nth-child(odd) td,.lay-g32 .p-inner tbody tr:nth-child(even) td,.lay-g32 .p-inner tbody tr:nth-child(odd) td,.lay-g33 .p-inner tbody tr:nth-child(even) td,.lay-g33 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ---- GEN batch 6 (g34-g41) ---- */
/* g34 THICKFRAME: thick colour frame + inner hairline */
.gk-thickframe{background:var(--bg)}
.gk-thickframe .gk-tf1{position:absolute;left:26px;top:26px;right:26px;bottom:26px;border:16px solid var(--bg2);pointer-events:none}
.gk-thickframe .gk-tf2{position:absolute;left:58px;top:58px;right:58px;bottom:58px;border:1px solid var(--acc);pointer-events:none}
.gk-thickframe .gk-kick{position:absolute;left:0;right:0;top:96px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-thickframe .gk-logo{position:absolute;left:50%;top:150px;transform:translateX(-50%)}
.gk-thickframe .gk-logo .arch{width:248px;height:324px}
.gk-thickframe .gk-title{position:absolute;left:90px;right:90px;top:534px;text-align:center;font-family:var(--f-head);font-size:34px;letter-spacing:4px;text-transform:uppercase;color:var(--ink);font-weight:600;line-height:1.3}
.gk-thickframe .gk-title.ag{font-size:28px}
.gk-thickframe .gk-orn{position:absolute;left:50%;top:650px;transform:translateX(-50%)}
.gk-thickframe .gk-sub{position:absolute;left:0;right:0;top:688px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-thickframe .gm-cen{position:absolute;left:110px;right:110px;bottom:120px}
.gk-thickframe .gk-foot{position:absolute;bottom:62px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g35 LEFTSTRIP: thin deep edge strip, content offset right */
.gk-leftstrip{background:var(--bg)}
.gk-leftstrip .gk-ls{position:absolute;left:0;top:0;bottom:0;width:62px;background:linear-gradient(180deg,var(--bg2),#223832)}
.gk-leftstrip .gk-lsd{position:absolute;left:26px;bottom:44px;width:10px;height:10px;background:var(--acc);transform:rotate(45deg)}
.gk-leftstrip .gk-kick{position:absolute;left:112px;top:76px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);max-width:420px}
.gk-leftstrip .gk-logo{position:absolute;left:112px;top:124px}
.gk-leftstrip .gk-logo .arch{width:246px;height:321px}
.gk-leftstrip .gk-title{position:absolute;left:108px;top:502px;font-family:var(--f-head);font-size:46px;line-height:1.14;color:var(--ink);font-weight:600;max-width:500px}
.gk-leftstrip .gk-title.ag{font-size:38px}
.gk-leftstrip .gk-sub{position:absolute;left:112px;top:668px;max-width:420px;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);line-height:1.5}
.gk-leftstrip .gm-grid{left:112px;right:64px;bottom:118px}
.gk-leftstrip .gk-foot{position:absolute;left:112px;bottom:48px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g36 ARCHWIN: double arch window behind crest */
.gk-archwin{background:var(--bg)}
.gk-archwin .gk-aw1{position:absolute;left:50%;top:120px;transform:translateX(-50%);width:420px;height:556px;border:2px solid var(--acc);border-radius:210px 210px 0 0;pointer-events:none}
.gk-archwin .gk-aw2{position:absolute;left:50%;top:138px;transform:translateX(-50%);width:388px;height:556px;border:1px solid var(--acc2);border-radius:194px 194px 0 0;opacity:.6;pointer-events:none}
.gk-archwin .gk-kick{position:absolute;left:0;right:0;top:60px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-archwin .gk-logo{position:absolute;left:50%;top:200px;transform:translateX(-50%)}
.gk-archwin .gk-logo .arch{width:238px;height:311px}
.gk-archwin .gk-title{position:absolute;left:70px;right:70px;top:716px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:42px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-archwin .gk-title.ag{font-size:34px}
.gk-archwin .gk-sub{position:absolute;left:0;right:0;top:790px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-archwin .gm-cen{position:absolute;left:90px;right:90px;bottom:104px}
.gk-archwin .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g37 SIDETITLE: vertical title on right edge of dark field */
.gk-sidetitle{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-sidetitle .gk-vt{position:absolute;right:-256px;top:50%;width:640px;margin-top:-14px;text-align:center;transform:rotate(90deg);font-family:var(--f-head);font-size:30px;letter-spacing:8px;text-transform:uppercase;color:var(--acc);white-space:nowrap}
.gk-sidetitle .gk-kick{position:absolute;left:72px;top:66px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc);max-width:380px}
.gk-sidetitle .gk-logo{position:absolute;left:72px;top:116px}
.gk-sidetitle .gk-logo .arch{width:256px;height:334px}
.gk-sidetitle .gk-sub{position:absolute;left:72px;top:510px;max-width:420px;font-family:var(--f-head);font-style:italic;font-size:17px;color:var(--mut);line-height:1.55}
.gk-sidetitle .gk-meta{position:absolute;left:72px;bottom:130px}
.gk-sidetitle .gk-foot{position:absolute;left:72px;bottom:58px;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g38 RINGCORNER: rings peeking from lower-left, right-aligned content */
.gk-ringcorner{background:var(--bg);overflow:hidden}
.gk-ringcorner .gk-rc1{position:absolute;left:-210px;bottom:-210px;width:520px;height:520px;border:2px solid var(--acc);border-radius:50%;opacity:.7;pointer-events:none}
.gk-ringcorner .gk-rc2{position:absolute;left:-270px;bottom:-270px;width:660px;height:660px;border:1.5px solid var(--acc2);border-radius:50%;opacity:.4;pointer-events:none}
.gk-ringcorner .gk-kick{position:absolute;right:64px;top:80px;font-size:11px;letter-spacing:6px;text-transform:uppercase;color:var(--acc2);text-align:right;max-width:400px}
.gk-ringcorner .gk-logo{position:absolute;right:64px;top:130px}
.gk-ringcorner .gk-logo .arch{width:242px;height:316px}
.gk-ringcorner .gk-title{position:absolute;left:230px;right:60px;top:520px;text-align:right;font-family:var(--f-head);font-size:48px;line-height:1.14;color:var(--ink);font-weight:600}
.gk-ringcorner .gk-title.ag{font-size:40px}
.gk-ringcorner .gk-sub{position:absolute;left:230px;right:64px;top:692px;text-align:right;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut);line-height:1.5}
.gk-ringcorner .gk-meta{position:absolute;right:64px;bottom:118px}
.gk-ringcorner .gk-foot{position:absolute;right:64px;bottom:52px;font-size:11.5px;color:var(--mut);letter-spacing:1px;text-align:right}

/* g39 DUALTONE: left dark half, right ivory half */
.gk-dualtone{background:var(--bg)}
.gk-dualtone .gk-dth{position:absolute;left:0;top:0;bottom:0;width:50%;background:linear-gradient(180deg,var(--bg2),#142a22)}
.gk-dualtone .gk-kick{position:absolute;left:44px;top:66px;font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--acc);max-width:320px}
.gk-dualtone .gk-logo{position:absolute;left:44px;top:120px}
.gk-dualtone .gk-logo .arch{width:240px;height:313px}
.gk-dualtone .gk-title{position:absolute;left:40px;top:540px;width:330px;font-family:var(--f-head);font-size:42px;line-height:1.16;color:var(--ink);font-weight:600}
.gk-dualtone .gk-title.ag{font-size:35px}
.gk-dualtone .gk-sub{position:absolute;left:44px;top:716px;width:320px;font-family:var(--f-head);font-style:italic;font-size:15.5px;color:var(--mut);line-height:1.5}
.gk-dualtone .gk-meta{position:absolute;right:44px;top:520px}
.gk-dualtone .gm-rlab{color:var(--acc2)}
.gk-dualtone .gm-rval{color:var(--dink)}
.gk-dualtone .gm-row{border-top-color:var(--acc)}
.gk-dualtone .gk-foot{position:absolute;right:44px;bottom:52px;width:330px;font-size:11.5px;color:var(--mut);letter-spacing:1px;line-height:1.7}

/* g40 USHAPE: U-line rising from base, meta inside */
.gk-ushape{background:linear-gradient(180deg,var(--bg),var(--bg2))}
.gk-ushape .gk-u1{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);width:460px;height:470px;border:1.5px solid var(--acc);border-top:none;border-radius:0 0 230px 230px;pointer-events:none}
.gk-ushape .gk-u2{position:absolute;left:50%;bottom:64px;transform:translateX(-50%);width:520px;height:510px;border:1px solid var(--acc2);border-top:none;border-radius:0 0 260px 260px;opacity:.5;pointer-events:none}
.gk-ushape .gk-kick{position:absolute;left:0;right:0;top:62px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc)}
.gk-ushape .gk-logo{position:absolute;left:50%;top:120px;transform:translateX(-50%)}
.gk-ushape .gk-logo .arch{width:254px;height:332px}
.gk-ushape .gk-title{position:absolute;left:60px;right:60px;top:520px;text-align:center;font-family:var(--f-head);font-size:40px;color:var(--ink);font-weight:600;line-height:1.25}
.gk-ushape .gk-title.ag{font-size:33px}
.gk-ushape .gk-sub{position:absolute;left:0;right:0;top:644px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-ushape .gm-cen{position:absolute;left:110px;right:110px;bottom:118px}
.gk-ushape .gk-foot{position:absolute;bottom:26px;left:0;right:0;text-align:center;font-size:11px;color:var(--mut);letter-spacing:1px}

/* g41 ARCTOP: concentric arcs descending from top */
.gk-arctop{background:var(--bg);overflow:hidden}
.gk-arctop .gk-ta1,.gk-arctop .gk-ta2,.gk-arctop .gk-ta3{position:absolute;left:50%;transform:translateX(-50%);border-radius:50%;border:1.5px solid var(--acc);pointer-events:none}
.gk-arctop .gk-ta1{width:640px;height:640px;top:-330px;opacity:.6}
.gk-arctop .gk-ta2{width:840px;height:840px;top:-430px;opacity:.42}
.gk-arctop .gk-ta3{width:1040px;height:1040px;top:-530px;opacity:.26}
.gk-arctop .gk-kick{position:absolute;left:0;right:0;top:56px;text-align:center;font-size:11px;letter-spacing:9px;text-transform:uppercase;color:var(--acc2)}
.gk-arctop .gk-logo{position:absolute;left:50%;top:290px;transform:translateX(-50%)}
.gk-arctop .gk-logo .arch{width:246px;height:321px}
.gk-arctop .gk-title{position:absolute;left:70px;right:70px;top:662px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:42px;color:var(--ink);font-weight:600;line-height:1.2}
.gk-arctop .gk-title.ag{font-size:34px}
.gk-arctop .gk-sub{position:absolute;left:0;right:0;top:778px;text-align:center;font-family:var(--f-head);font-style:italic;font-size:16px;color:var(--mut)}
.gk-arctop .gm-cen{position:absolute;left:90px;right:90px;bottom:104px}
.gk-arctop .gk-foot{position:absolute;bottom:44px;left:0;right:0;text-align:center;font-size:11.5px;color:var(--mut);letter-spacing:1px}

/* g34-g41 inner pages: universal box-free reset */
.lay-g34 .p-inner .band,.lay-g34 .p-inner .bandline,.lay-g35 .p-inner .band,.lay-g35 .p-inner .bandline,.lay-g36 .p-inner .band,.lay-g36 .p-inner .bandline,.lay-g37 .p-inner .band,.lay-g37 .p-inner .bandline,.lay-g38 .p-inner .band,.lay-g38 .p-inner .bandline,.lay-g39 .p-inner .band,.lay-g39 .p-inner .bandline,.lay-g40 .p-inner .band,.lay-g40 .p-inner .bandline,.lay-g41 .p-inner .band,.lay-g41 .p-inner .bandline{display:none}
.lay-g34 .p-inner .icard,.lay-g35 .p-inner .icard,.lay-g36 .p-inner .icard,.lay-g37 .p-inner .icard,.lay-g38 .p-inner .icard,.lay-g39 .p-inner .icard,.lay-g40 .p-inner .icard,.lay-g41 .p-inner .icard{background:none;border:none;box-shadow:none;border-radius:0;padding:12px 8px 0}
.lay-g34 .p-inner .icbar,.lay-g35 .p-inner .icbar,.lay-g36 .p-inner .icbar,.lay-g37 .p-inner .icbar,.lay-g38 .p-inner .icbar,.lay-g39 .p-inner .icbar,.lay-g40 .p-inner .icbar,.lay-g41 .p-inner .icbar{display:none}
.lay-g34 .p-inner thead th,.lay-g35 .p-inner thead th,.lay-g36 .p-inner thead th,.lay-g37 .p-inner thead th,.lay-g38 .p-inner thead th,.lay-g39 .p-inner thead th,.lay-g40 .p-inner thead th,.lay-g41 .p-inner thead th{background:none;border-left:none;border-right:none;border-top:none;text-transform:uppercase;letter-spacing:2px;font-size:11.5px}
.lay-g34 .p-inner tbody tr:nth-child(even) td,.lay-g34 .p-inner tbody tr:nth-child(odd) td,.lay-g35 .p-inner tbody tr:nth-child(even) td,.lay-g35 .p-inner tbody tr:nth-child(odd) td,.lay-g36 .p-inner tbody tr:nth-child(even) td,.lay-g36 .p-inner tbody tr:nth-child(odd) td,.lay-g37 .p-inner tbody tr:nth-child(even) td,.lay-g37 .p-inner tbody tr:nth-child(odd) td,.lay-g38 .p-inner tbody tr:nth-child(even) td,.lay-g38 .p-inner tbody tr:nth-child(odd) td,.lay-g39 .p-inner tbody tr:nth-child(even) td,.lay-g39 .p-inner tbody tr:nth-child(odd) td,.lay-g40 .p-inner tbody tr:nth-child(even) td,.lay-g40 .p-inner tbody tr:nth-child(odd) td,.lay-g41 .p-inner tbody tr:nth-child(even) td,.lay-g41 .p-inner tbody tr:nth-child(odd) td{background:transparent}

/* ---- post-login tool chooser ---- */
#chooser { position: fixed; inset: 0; z-index: 49; background: #f4f5ec; overflow: auto; }
#chooser.hidden { display: none; }
.chooser-box { background: #fff; border-radius: 18px; padding: 34px 30px; box-shadow: 0 10px 36px rgba(34,60,49,.10); max-width: 480px; width: 100%; text-align: center; }
.chooser-logo { width: 150px; height: auto; margin: 0 auto 12px; display: block; }
.chooser-box h2 { font-family: 'Playfair Display', serif; color: var(--c-maroon, #264a3b); margin-bottom: 20px; font-size: 22px; }
.chooser-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.chooser-card { display: flex; flex-direction: column; gap: 6px; align-items: center; padding: 22px 14px; border: 1.5px solid #e3d9c8; border-radius: 14px; background: #fbf7ef; cursor: pointer; text-decoration: none; font-family: inherit; transition: all .15s; }
.chooser-card:hover { border-color: #c9a227; background: #f7f0dd; transform: translateY(-1px); }
.cc-title { font-size: 16px; font-weight: 600; color: #223c31; }
.cc-sub { font-size: 12px; color: #6b7a72; line-height: 1.4; }
@media (max-width: 480px){ .chooser-cards { grid-template-columns: 1fr; } }

/* ============ Staff dashboard (post-login landing) ============ */
.dash { display: flex; min-height: 100vh; background: #f4f5ec; }
.dash-side { width: 230px; background: var(--c-maroon); color: #fff; padding: 18px 14px; flex-shrink: 0; transition: margin-left .25s ease; }
.dash-side.closed { margin-left: -230px; }
.dash-close { display: none; }
@media (max-width: 760px) {
  .dash-side { padding-top: 52px; }
  .dash-close { display: block; position: absolute; top: 12px; right: 10px; background: none; border: 1px solid rgba(255,255,255,.45); color: #fff; border-radius: 8px; font-size: 20px; line-height: 1; padding: 5px 11px; cursor: pointer; }
}
.dash-brand { display: flex; align-items: center; gap: 10px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.18); margin-bottom: 14px; }
.dash-brand img { width: 44px; height: auto; }
.dash-brand span { font-family: var(--f-head); font-size: 20px; font-weight: 600; letter-spacing: 1px; }
.dash-nav { display: flex; flex-direction: column; gap: 6px; }
.dash-link { color: #eef3ec; text-decoration: none; padding: 11px 12px; border-radius: 10px; font-size: 14.5px; font-weight: 500; border: none; background: none; text-align: left; cursor: pointer; font-family: var(--f-body); }
.dash-link:hover { background: rgba(255,255,255,.10); }
.dash-tag { display: inline-block; font-size: 10px; background: var(--c-rose); color: #1e3a2e; border-radius: 999px; padding: 2px 8px; margin-left: 6px; font-weight: 600; vertical-align: middle; }
.dash-main { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.dash-top { display: flex; align-items: center; justify-content: space-between; padding: 14px 20px; background: #fff; box-shadow: 0 2px 8px rgba(36,71,58,.08); position: sticky; top: 0; z-index: 6; }
.dash-burger { background: none; border: 1px solid #d8dfd2; border-radius: 10px; font-size: 18px; padding: 6px 12px; cursor: pointer; color: var(--c-maroon); }
.dash-user { display: flex; align-items: center; gap: 12px; font-size: 14.5px; font-weight: 500; color: var(--c-ink); }
.dash-logout { background: none; border: 1px solid #d8dfd2; border-radius: 999px; padding: 6px 14px; font-size: 13px; cursor: pointer; color: var(--c-maroon); font-family: var(--f-body); }
.dash-logout:hover { background: var(--c-maroon); color: #fff; }
.dash-body { padding: 34px 28px; max-width: 980px; }
.dash-hi { font-family: var(--f-head); font-size: 30px; color: var(--c-maroon); margin-bottom: 4px; }
.dash-sub { color: var(--c-ink-m); font-size: 14px; margin-bottom: 26px; }
.dash-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.dash-card { display: block; background: #fff; border: 1px solid #e6e2d4; border-radius: 14px; padding: 20px 18px; text-decoration: none; color: var(--c-ink); box-shadow: 0 2px 10px rgba(36,71,58,.05); transition: transform .15s ease, box-shadow .15s ease; }
.dash-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(36,71,58,.12); border-color: var(--c-rose); }
.dc-title { display: block; font-weight: 600; font-size: 16px; color: var(--c-maroon); margin-bottom: 6px; }
.dc-sub { display: block; font-size: 13px; color: var(--c-ink-m); line-height: 1.45; }
@media (max-width: 760px) {
  .dash-side { position: fixed; z-index: 20; height: 100vh; }
  .dash-body { padding: 22px 16px; }
}

/* dashboard modules: quotation + agreement lists */
.dash-mod { margin-top: 30px; background: #fff; border: 1px solid #e6e2d4; border-radius: 14px; padding: 18px 20px; }
.dm-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.dm-head h3 { font-family: var(--f-head); font-size: 19px; color: var(--c-maroon); }
.dm-tools { display: flex; gap: 8px; flex-wrap: wrap; }
.dm-add { display: inline-block; background: var(--c-maroon); color: #fff; text-decoration: none; border-radius: 999px; padding: 7px 15px; font-size: 13px; font-weight: 500; }
.dm-add:hover { background: var(--c-maroon-d); }
.dm-list { display: flex; flex-direction: column; gap: 8px; }
.dm-row { display: flex; align-items: center; gap: 12px; border: 1px solid #eee9db; border-radius: 10px; padding: 10px 14px; }
.dm-row .nm { font-weight: 600; color: var(--c-ink); }
.dm-row .mt { font-size: 12.5px; color: var(--c-ink-m); }
.dm-row .sp { flex: 1; }
.dm-act { font-size: 12.5px; color: var(--c-maroon); text-decoration: none; border: 1px solid #d8dfd2; border-radius: 999px; padding: 5px 12px; white-space: nowrap; }
.dm-act:hover { background: var(--c-maroon); color: #fff; }
.dm-badge { font-size: 10.5px; font-weight: 600; border-radius: 999px; padding: 2px 9px; background: var(--c-band); color: var(--c-maroon); }

/* mobile: quotation/agreement rows must not spill actions outside the card (Deep 26 Oct) */
@media (max-width: 640px){
  .dm-row{flex-wrap:wrap;gap:6px 10px;padding:10px 12px}
  .dm-row .nm{flex:1 1 calc(100% - 90px);min-width:0;overflow-wrap:anywhere}
  .dm-row .mt{flex-basis:100%;order:3;font-size:12px}
  .dm-row .sp{display:none}
  .dm-row .dm-act{order:4}
}

/* very small phones: dashboard top bar must wrap, Log out stays inside (Deep 26 Oct) */
@media (max-width: 480px){
  .dash-top{flex-wrap:wrap;gap:8px;padding:12px 14px}
  .dash-user{flex-wrap:wrap;gap:6px 10px;justify-content:flex-end;min-width:0}
  .dash-user #dashName{overflow-wrap:anywhere;min-width:0}
  .steps{flex-wrap:wrap;overflow-x:visible;-webkit-mask-image:none;mask-image:none}
  .steps .step-btn{flex:1 1 calc(50% - 6px);min-width:0;padding:9px 4px;font-size:12.5px;white-space:normal;text-align:center}
}
