/* Customer journeys and the local store-operations preview. */
button:disabled{cursor:not-allowed;opacity:.5;transform:none!important;box-shadow:none!important}
.commerce-page{max-width:1280px;padding:32px 5% 80px;margin:auto}
.demo-strip{display:flex;align-items:flex-start;gap:12px;background:#fff8d7;border:1px solid #eadc93;padding:13px 18px;border-radius:12px;font-size:12px;line-height:1.6;color:#695329}
.demo-strip svg{flex-shrink:0;margin-top:2px}
.commerce-heading{padding:38px 0 28px}
.commerce-heading .eyebrow{color:var(--aqua);margin-bottom:12px}
.commerce-heading h1{font-size:clamp(32px,4vw,52px);line-height:1.15}
.commerce-heading p{color:var(--muted);line-height:1.7;margin-top:13px}
.commerce-panel{padding:30px;border:1px solid var(--line);border-radius:20px;background:white;min-width:0}
.commerce-panel h2{font-size:27px;letter-spacing:-.035em;margin-bottom:18px}
.commerce-panel h3{font-size:18px;margin:10px 0}
.commerce-panel p{line-height:1.8;color:var(--muted);margin:12px 0 20px;font-size:14px}
.commerce-panel p a,.ops-table a{color:var(--aqua);text-decoration:underline;text-underline-offset:3px;font-weight:800}
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start}
.checkout-steps{display:flex;gap:8px;margin:0 0 28px;background:var(--lilac);padding:8px;border-radius:16px}
.checkout-steps button{flex:1;display:flex;align-items:center;gap:10px;padding:12px;border-radius:10px;font-weight:800;font-size:13px}
.checkout-steps button span{display:grid;place-items:center;width:28px;height:28px;border:1px solid currentColor;border-radius:50%;flex-shrink:0}
.checkout-steps [aria-current]{background:var(--aqua);color:white}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.form-field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:800;margin:0 0 20px;min-width:0}
.form-grid .form-field{margin:0}
.form-field input,.form-field select{width:100%;min-height:48px;border:1px solid #cfc0cb;border-radius:10px;background:white;padding:12px 14px;color:var(--ink);font-weight:400;min-width:0}
.form-field input:focus,.form-field select:focus{outline:2px solid var(--aqua);outline-offset:2px}
.form-field:has([name="address"]),.form-field:has([name="email"]){grid-column:1/-1}
.form-note{font-size:12px!important;line-height:1.7;color:var(--muted)}
.form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px}
.check-field{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.7;margin:24px 0}
.check-field input{width:19px;height:19px;accent-color:var(--aqua);flex-shrink:0;margin-top:2px}
.form-error{background:#fff0f3;border:1px solid #df9aad;color:#9c1745;padding:18px;border-radius:12px;margin-bottom:20px;font-size:14px;line-height:1.7}
.delivery-choice{border:2px solid var(--aqua);border-radius:12px;padding:20px;display:grid;gap:9px;background:#f1fbfd;margin:22px 0}
.delivery-choice span{font-size:13px;color:var(--muted)}
.order-summary{background:#fffbfd;position:sticky;top:115px}
.summary-item{display:grid;grid-template-columns:60px 1fr auto;gap:13px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line);font-size:13px}
.summary-image{height:74px;overflow:hidden;border-radius:8px;border:1px solid var(--line);background:white}
.summary-item small{display:block;color:var(--muted);font-size:11px;line-height:1.6;margin-top:5px}
.summary-item b{white-space:nowrap;font-size:12px}
.total-line{display:flex;justify-content:space-between;gap:16px;margin-top:19px;font-size:14px}
.grand-total{padding-top:20px;border-top:1px solid var(--line);font-size:19px;margin-bottom:20px}
.order-summary .text-button{color:var(--aqua);font-size:12px;text-decoration:underline;margin-top:15px}
.review-block{border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.review-block .button{font-size:11px;padding:8px 12px;min-height:36px;box-shadow:none}
.payment-pending{padding:20px;border-radius:14px;background:var(--lilac);margin:26px 0}
.payment-pending p{font-size:13px}
.payment-pending button{font-size:12px;width:100%}
.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:980px;margin:auto}
.auth-layout form{margin-top:25px}
.auth-layout form>.button{width:100%}
.auth-links{display:grid;gap:17px;margin-top:30px;font-size:13px;color:var(--aqua);text-decoration:underline}
.auth-aside{border-radius:22px;background:var(--pink);padding:50px 35px;display:flex;flex-direction:column;justify-content:center;gap:25px}
.auth-aside>span svg{height:45px;width:45px;color:var(--rose)}
.auth-aside h2{font-size:38px}
.auth-aside p{line-height:1.8;color:var(--muted)}
.auth-aside .text-link{align-self:flex-start}
.account-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px}
.account-nav{display:flex;flex-direction:column;gap:6px;align-self:start;border:1px solid var(--line);border-radius:16px;padding:10px}
.account-nav a,.account-nav button{padding:14px 16px;border-radius:10px;font-size:13px;font-weight:800;text-align:left}
.account-nav [aria-current],.account-nav a:hover{background:var(--lilac);color:var(--aqua)}
.dashboard-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0 35px}
.dashboard-cards a{background:#f4fbfd;border:1px solid #cae8ee;border-radius:15px;padding:24px 18px;display:grid;gap:15px}
.dashboard-cards a:nth-child(2){background:#fff0f7;border-color:#efd4e2}
.dashboard-cards a:nth-child(3){background:#fffbe4;border-color:#eee4b1}
.dashboard-cards b{font-size:32px;color:var(--aqua)}
.dashboard-cards span{font-size:13px;font-weight:800}
.order-card{display:flex;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);font-size:13px}
.order-card>div{flex:1}.order-card small{display:block;margin-top:9px;color:var(--muted);font-size:12px}
.status-chip{display:inline-block;padding:7px 12px;border-radius:8px;background:var(--lilac);color:var(--aqua);font-size:12px;font-weight:800;white-space:nowrap}
.order-timeline{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.order-timeline span{background:#f5f2f4;padding:10px 14px;border-radius:10px;font-size:12px}
.order-timeline .current{background:var(--aqua);color:white}
.success-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;color:#26744b;background:#e3f5e9;margin-bottom:20px}
.studio-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.studio-nav a{padding:12px 19px;border:1px solid var(--line);border-radius:11px;font-weight:800;font-size:13px}
.studio-nav [aria-current]{background:var(--aqua);border-color:var(--aqua);color:white}
.table-scroll{overflow:auto;margin:24px 0}
.ops-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
.ops-table th{padding:14px;background:#f7f3f6;font-size:11px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.ops-table td{padding:17px 14px;border-bottom:1px solid var(--line);line-height:1.6}
.ops-table td:first-child{min-width:200px}
.launch-list{padding-left:22px;line-height:2;color:var(--muted);font-size:14px;margin:20px 0 30px}
.availability-note{display:block;color:#a2284e;font-size:12px;margin-bottom:8px}
.photo-placeholder{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:repeating-linear-gradient(135deg,#fcf9fc,#fcf9fc 12px,#f7f3f7 12px,#f7f3f7 13px);gap:17px;border:14px solid white;color:var(--ink)}
.photo-placeholder-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--lilac);color:var(--aqua)}
.photo-placeholder-icon svg{width:32px;height:32px}
.photo-placeholder small{font-size:10px;letter-spacing:.12em;color:var(--aqua);font-weight:900}
.photo-placeholder strong{font-family:var(--heading);font-size:27px;line-height:1.2;max-width:330px}
.photo-placeholder>span:not(.photo-placeholder-icon){font-size:13px;line-height:1.8;max-width:350px;color:var(--muted)}
.photo-placeholder em{font-size:11px;font-style:normal;line-height:1.5;color:var(--muted)}
.photo-placeholder.compact{padding:28px 16px 50px;border-width:6px;gap:11px}
.photo-placeholder.compact strong{font-size:20px}.photo-placeholder.compact>span:not(.photo-placeholder-icon){display:none}.photo-placeholder.compact .photo-placeholder-icon{height:44px;width:44px}
.photo-navigation{display:flex;align-items:center;justify-content:space-between;margin:14px 0;font-size:12px;color:var(--aqua);font-weight:800}
.photo-navigation button{border:1px solid var(--line);border-radius:50%;width:36px;height:36px}
.photo-thumbnails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.photo-thumbnails button{min-height:70px;text-align:left;border:1px solid var(--line);border-radius:10px;padding:11px;font-size:11px;line-height:1.5;background:white}
.photo-thumbnails button span{display:block;font-size:10px;font-weight:900;color:var(--aqua);margin-bottom:5px}
.photo-thumbnails [aria-pressed="true"]{background:var(--lilac);border:2px solid var(--aqua);padding:10px}
@media(max-width:1000px){.checkout-layout{grid-template-columns:1fr 1fr;gap:18px}.commerce-panel{padding:22px}.header-tools{gap:10px}}
@media(max-width:760px){
 .commerce-page{padding:20px 20px 50px}.commerce-heading{padding:28px 0}.demo-strip{font-size:11px;padding:12px}.commerce-heading p{font-size:13px}
 .checkout-layout,.auth-layout,.account-layout{grid-template-columns:1fr}.order-summary{position:static}.commerce-panel{padding:22px 18px;border-radius:16px}
 .checkout-steps{gap:3px;padding:5px}.checkout-steps button{flex-direction:column;gap:6px;text-align:center;font-size:10px;padding:9px 4px}.checkout-steps button span{width:24px;height:24px}
 .form-grid{grid-template-columns:1fr;gap:18px}.form-field{font-size:12px}.form-field input,.form-field select{font-size:16px}.commerce-panel h2{font-size:24px}.commerce-panel p{font-size:13px}
 .auth-aside{padding:30px}.auth-aside h2{font-size:30px}.account-nav{flex-direction:row;flex-wrap:wrap;padding:6px;gap:3px}.account-nav a,.account-nav button{padding:10px;font-size:11px}
 .dashboard-cards{gap:8px}.dashboard-cards a{padding:18px 12px}.dashboard-cards span{font-size:11px}.dashboard-cards b{font-size:27px}
 .order-card{flex-wrap:wrap;gap:12px}.order-card>div{flex-basis:60%}.order-card>b{flex:1}.studio-nav{gap:6px}.studio-nav a{padding:10px 12px;font-size:12px}
 .summary-item{grid-template-columns:45px 1fr;gap:10px}.summary-item>b{grid-column:2}.summary-image{height:60px}.form-actions .button{font-size:12px}
 .account-link{padding:3px}.header-tools{gap:5px}.account-link svg{width:20px;height:20px}.header .brand{width:95px}.brand-word{font-size:32px}
 .photo-placeholder{padding:18px;border-width:8px;gap:12px}.photo-placeholder strong{font-size:23px}.photo-placeholder>span:not(.photo-placeholder-icon){font-size:12px}.photo-placeholder-icon{width:45px;height:45px}
 .photo-placeholder.compact{padding:16px 8px 48px;gap:8px}.photo-placeholder.compact strong{font-size:15px}.photo-placeholder.compact small{font-size:8px}.photo-placeholder.compact em{display:none}.photo-placeholder.compact .photo-placeholder-icon{height:32px;width:32px}.photo-placeholder.compact svg{width:22px;height:22px}
 .photo-thumbnails{gap:6px}.photo-thumbnails button{padding:8px;font-size:10px}.photo-thumbnails [aria-pressed="true"]{padding:7px}.gallery-dots{gap:3px}
}

/* Pre-launch: hide unfinished photo-plan placeholders and style policy pages. */
.prelaunch .photo-navigation,.prelaunch .photo-thumbnails,.prelaunch #gallery-note,.prelaunch .product-badge,
.prelaunch .quick-photo-nav,.prelaunch .quick-photo-tabs,.prelaunch .quick-photo-brief {display:none}
.policy-page {padding-bottom:70px}
.policy-page h2 {font-size:24px;margin:34px 0 10px}
.policy-page p,.policy-page li {font-size:14px;line-height:1.75}
.policy-page ul,.policy-page ol {padding-left:20px;margin:0 0 14px}
.policy-page a {text-decoration:underline}
.policy-updated {color:var(--muted);font-size:12px!important;margin-top:30px}
