/* One campaign, clear navigation and compact product cards. */
#publicView { background:#fff; }
#publicView .campaign-section {max-width:1640px;padding-top:36px;padding-bottom:32px;}
.campaign-layout {display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,940px) minmax(190px,1fr);gap:24px;max-width:1520px;margin:auto;align-items:start;}
.campaign-center {min-width:0;}
.campaign-aside {min-width:0;margin-top:86px;border:1px solid #dfe8f0;border-radius:14px;padding:23px 20px;background:#f7fafc;color:#173650;}
.campaign-aside-label {display:block;font-size:9px;font-weight:800;letter-spacing:.14em;color:#2c8190;}
.campaign-aside h2 {font-size:clamp(18px,1.4vw,23px);line-height:1.2;letter-spacing:-.035em;margin:14px 0 22px;}
.campaign-assurance ul {list-style:none;margin:0;padding:0;}
.campaign-assurance li {display:grid;grid-template-columns:25px 1fr;column-gap:10px;padding:16px 0;border-top:1px solid #dce6ed;}
.campaign-assurance li>span {grid-row:span 2;color:#2193a3;font-weight:800;font-size:10px;padding-top:2px;}
.campaign-assurance strong {font-size:12px;line-height:1.35;}
.campaign-assurance small {font-size:11px;line-height:1.5;color:#61778a;margin-top:4px;}
.campaign-access {background:#edf5f9;}
.campaign-access p {font-size:12px;line-height:1.6;color:#557089;margin:0 0 25px;}
.campaign-access>button {width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-radius:7px;font-size:11px;font-weight:750;line-height:1.4;text-align:left;cursor:pointer;transition:background-color .18s,border-color .18s,transform .18s;}
.campaign-access>button:hover {transform:translateY(-2px);}
.campaign-access-primary {background:#164f85;color:#fff;border:1px solid #164f85;}
.campaign-access-primary:hover {background:#0f3c68;}
.campaign-access-secondary {margin-top:9px;background:#fff;color:#164f85;border:1px solid #b9d2df;}
.campaign-access-secondary:hover {border-color:#5394a7;background:#f9fcfe;}
.campaign-access-links {display:grid;gap:0;margin-top:25px;padding-top:8px;border-top:1px solid #d0e1ea;}
.campaign-access-links button {display:flex;justify-content:space-between;width:100%;padding:12px 0;border:0;border-bottom:1px solid #d0e1ea;background:transparent;color:#245776;font-size:11px;font-weight:700;text-align:left;cursor:pointer;}
.campaign-access-links button:hover {color:#0b7992;}
.campaign-aside button:focus-visible {outline:3px solid #2b93ad;outline-offset:3px;}
.campaign-intro {display:block;margin-bottom:24px;}
.campaign-intro h1 {font-size:clamp(26px,3vw,38px);letter-spacing:-.045em;color:#143653;}
.campaign-intro .eyebrow {font-size:10px;letter-spacing:.12em;color:#357b88;}
.campaign-intro>p {max-width:none;line-height:1.6;margin-top:7px;}
#publicView .campaign-grid {max-width:none;width:100%;margin-bottom:0;}
#publicView .campaign-main {background:white;border:1px solid #e0e6ed;border-radius:16px;box-shadow:0 10px 30px #173e4910;}
#publicView .campaign-link {background:white;aspect-ratio:auto;}
#publicView .campaign-artwork {width:100%;height:auto;max-height:none;object-fit:contain;}
.campaign-controls {border-top:1px solid #edf0f4;gap:14px;padding:10px;}
.campaign-controls>button {border-radius:50%;width:32px;height:32px;border-color:#e0e6ed;}
.campaign-pages span {height:4px;border-radius:4px;}
.campaign-shortcuts {border:0;gap:12px;background:transparent;margin-top:22px;}
.campaign-shortcuts button {border:1px solid #dfe7ee;border-radius:10px;padding:20px 36px 20px 18px;font-size:13px;transition:background .2s,border-color .2s;}
.campaign-shortcuts button:last-child {border-right:1px solid #dfe7ee;}
.campaign-shortcuts button:hover {background:#f2f7fa;border-color:#aac5d3;}
#publicView .brand-strip {background:#f7f9fb;border-color:#edf0f4;min-height:70px;font-size:13px;}
#publicView .weekly-vitrine {background:#f6f9fc;border:1px solid #e1e9f0;padding:24px;border-radius:14px;box-shadow:none;}
#publicView .vitrine-heading h2 {color:#173d60;font-size:24px;}
#publicView .vitrine-heading p {color:#657b90;}
#publicView .vitrine-heading>div>span {color:#267c8c;}
#publicView .vitrine-controls button {color:#173d60;border-color:#cbd9e5;}
#publicView .weekly-vitrine {margin-top:28px;margin-bottom:0;}
#publicView .steps article {border:1px solid #e1e9ef;border-radius:12px;box-shadow:none;}
#publicView .step-no {color:#99adbf;}
#publicView .partner-copy {background:#f1f6f8;}
#publicView .section {padding-top:64px;padding-bottom:64px;}
@media(max-width:1200px){
 .campaign-layout {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:940px;}
 .campaign-center {grid-column:1/-1;grid-row:1;}
 .campaign-aside {margin-top:0;}
 .campaign-assurance {grid-column:1;grid-row:2;}
 .campaign-access {grid-column:2;grid-row:2;}
}
.client-mode .product-card.coin-product-card {border:2px solid #c39a36!important;box-shadow:0 3px 14px #aa812013;}
.client-mode .product-card.coin-product-card:hover {border-color:#987019!important;}
.client-mode .product-card .product-coin-value {background:#fcf7e8;border-radius:6px;color:#795b16;}
.client-mode .product-media {height:180px;}
.client-mode .product-body {gap:8px;padding:18px;}
.client-mode .product-body .product-price {margin-top:auto;padding-top:16px;}
.client-mode .product-buy {margin-top:auto;}
@media(max-width:700px){
 #publicView .campaign-section {padding:24px 16px;}
 .campaign-layout {grid-template-columns:1fr;gap:12px;}
 .campaign-center,.campaign-assurance,.campaign-access {grid-column:1;}
 .campaign-center {grid-row:1;}
 .campaign-access {grid-row:2;}
 .campaign-assurance {grid-row:3;}
 .campaign-aside {padding:20px;}
 .campaign-assurance ul {display:grid;grid-template-columns:1fr;}
 .campaign-assurance li {padding:11px 0;}
 .campaign-intro {margin-bottom:16px;}
 .campaign-intro h1 {font-size:28px;}
 .campaign-intro>p {max-width:none;font-size:12px;}
 .campaign-shortcuts {grid-template-columns:1fr 1fr;gap:8px;}
 .campaign-shortcuts button {font-size:12px;padding:16px 28px 16px 12px;}
 #publicView .weekly-vitrine {padding:18px 12px;}
 .client-mode .product-media {height:150px;}
 .client-mode .product-body {padding:12px;}
}
