.siphonr-home-hero{max-width:1180px;margin:0 auto 70px;padding:80px 24px 70px;background:#2a2018;color:#fff7ed;display:grid;grid-template-columns:1.2fr .8fr;gap:50px}.siphonr-home-hero h1{font:400 clamp(48px,7vw,88px)/.94 Georgia,serif;letter-spacing:-.06em;margin:0 0 24px}.siphonr-home-hero h1 em{color:#e86f51}.siphonr-home-hero p:not(.siphonr-eyebrow){font-size:18px;line-height:1.6;max-width:510px;margin-bottom:30px}.siphonr-home-hero aside{align-self:end;border-left:1px solid #ffffff40;padding-left:26px}.siphonr-home-hero aside strong{font:400 28px Georgia,serif}.siphonr-home-hero aside p{border-bottom:1px solid #ffffff26;padding:13px 0;margin:0;color:#fff7edcc;font-size:14px}.siphonr-home-section{max-width:1180px;margin:0 auto;padding:40px 24px 80px}.siphonr-home-section h2{font:400 clamp(34px,5vw,56px)/1 Georgia,serif;letter-spacing:-.04em;margin:0 0 30px}.siphonr-collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.siphonr-collection-card{display:flex;align-items:end;min-height:170px;padding:22px;background:#fff;border:1px solid #eadfce;border-radius:20px;transition:transform .2s}.siphonr-collection-card:hover{transform:translateY(-4px);background:#fbf3e8}.siphonr-collection-card span{font:400 25px Georgia,serif}.siphonr-home-products{background:#fff;margin-bottom:25px;border-radius:26px}.siphonr-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.siphonr-section-heading h2{margin-bottom:0}.siphonr-section-heading>a{color:#e86f51;text-decoration:none;white-space:nowrap}.siphonr-empty{padding:30px 0;color:#76695f}.siphonr-not-found{min-height:70vh}@media(max-width:800px){.siphonr-home-hero{grid-template-columns:1fr;margin-bottom:30px}.siphonr-collection-grid{grid-template-columns:repeat(2,1fr)}.siphonr-section-heading{display:block}.siphonr-section-heading>a{display:inline-block;margin-top:15px}}@media(max-width:520px){.siphonr-home-hero{padding:50px 22px}.siphonr-collection-grid{grid-template-columns:1fr}.siphonr-home-section{padding-bottom:45px}}

/* Provider-neutral Haven payment presentation. Secure inputs remain provider-owned. */
.siphonr-payment-selector,
.siphonr-payment-area {
    margin: 26px 0;
    padding: 22px;
    border: 1px solid #d9cdbf;
    border-radius: 16px;
    background: #fffdf9;
}
.siphonr-provider-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 20px;
}
.siphonr-provider-options label {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 10px 14px;
    border: 1px solid #d9cdbf;
    border-radius: 10px;
    cursor: pointer;
}
.siphonr-provider-options label:has(input:checked) { border-color: #6a5b48; background: #f8efe4; }
.siphonr-provider-panel[hidden],
.siphonr-express-payment[hidden],
.siphonr-wallet-button[hidden],
.siphonr-wallet-mount[hidden] { display: none !important; }
.siphonr-provider-panel h3 { margin: 20px 0 10px; font-size: 18px; }
.siphonr-express-grid { display: grid; gap: 10px; margin: 14px 0 20px; }
.siphonr-wallet-button,
.siphonr-wallet-mount { width: 100%; min-height: 48px; }
.siphonr-wallet-button {
    border: 1px solid #2a2018;
    border-radius: 5px;
    background: #2a2018;
    color: #fff;
    font-weight: 700;
    cursor: pointer;
}
.siphonr-apple-pay-button { background: #000; font-size: 0; }
.siphonr-apple-pay-button::after { content: "Pay with Apple Pay"; font-size: 16px; }
.siphonr-square-method { margin-top: 16px; }
.siphonr-square-method summary { min-height: 44px; cursor: pointer; font-weight: 700; }
#siphonr-square-card,
#siphonr-square-gift-card,
#siphonr-payment-element,
#siphonr-stripe-express { min-height: 48px; }
.siphonr-payment-divider { display: flex; align-items: center; gap: 12px; color: #76695f; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; }
.siphonr-payment-divider::before,
.siphonr-payment-divider::after { content: ""; height: 1px; flex: 1; background: #d9cdbf; }
.siphonr-payment-summary { color: #5c5148; }
#siphonr-square-error,
#siphonr-payment-error { color: #8d2f24; font-weight: 700; }

@media (max-width: 520px) {
    .siphonr-payment-selector,
    .siphonr-payment-area { padding: 16px; margin-inline: -4px; }
    .siphonr-provider-options { grid-template-columns: 1fr; }
    .siphonr-wallet-button,
    .siphonr-wallet-mount,
    #siphonr-checkout-submit,
    #siphonr-payment-submit { width: 100%; min-height: 48px; }
}
