.taste-contact-page { padding-bottom:72px;background:#fff; }
.taste-contact-hero { display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);min-height:480px;margin-top:34px;padding-inline:40px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#f8f4eb,#eef5ed); }
.taste-contact-hero__copy { display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:64px 54px 64px 20px;position:relative;z-index:2; }
.taste-contact-hero h1 { max-width:650px;margin:16px 0 20px;font-size:clamp(42px,4.5vw,68px);line-height:1.03;font-weight:600;letter-spacing:-.045em;color:var(--taste-dark);text-transform:uppercase; }
.taste-contact-hero p { max-width:570px;margin:0 0 28px;color:#5f6d64;font-size:17px;line-height:1.7; }
.taste-contact-hero__media { min-width:0;margin-right:-40px;overflow:hidden;position:relative; }
.taste-contact-hero__media:after { content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f2f4e9 0%,transparent 30%); }
.taste-contact-hero__media img { width:100%;height:100%;object-fit:cover;object-position:66% center; }
.taste-contact-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-top:30px; }
.taste-contact-cards article { display:flex;gap:18px;align-items:flex-start;min-width:0;padding:25px;border:1px solid #dfe8de;border-radius:12px;background:#fff;box-shadow:0 8px 25px #163c2c0a; }
.taste-contact-cards article>span,.taste-contact-support__items>a>span { flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#eaf3e4;color:var(--taste-green); }
.taste-contact-cards svg { width:22px;height:22px; }
.taste-contact-cards small { display:block;color:#778178;font-size:16px;line-height:1.6; }
.taste-contact-cards strong,.taste-contact-cards a { display:block;color:var(--taste-dark);font-size:18px;font-weight:650;text-decoration:none;overflow-wrap:anywhere; }
.taste-contact-cards p { margin:3px 0 0;color:#69756e;font-size:16px;line-height:1.6; }
.taste-contact-break { position:relative;min-height:340px;margin-top:64px;border-radius:18px;overflow:hidden;background:var(--taste-dark); }
.taste-contact-break>img { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center; }
.taste-contact-break:after { content:"";position:absolute;inset:0;background:linear-gradient(90deg,#123b2ff5 0%,#123b2fdc 40%,#123b2f33 75%); }
.taste-contact-break>div { position:relative;z-index:2;max-width:680px;padding:64px;color:#fff; }
.taste-contact-break .taste-eyebrow { color:#d8e8bd; }
.taste-contact-break h2 { margin:13px 0 17px;color:#fff;font-size:clamp(32px,3.4vw,50px);line-height:1.08;text-transform:uppercase; }
.taste-contact-break p { margin:0;color:#e0e9df;font-size:17px;line-height:1.7; }
.taste-contact-main { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:28px;padding-top:64px; }
.taste-contact-form-panel,.taste-contact-support { border:1px solid #dfe7de;border-radius:16px;padding:42px;background:#fff; }
.taste-contact-form-panel { box-shadow:0 18px 45px #163c2c0c; }
.taste-contact-main h2 { margin:10px 0 28px;color:var(--taste-dark);font-size:36px;line-height:1.15;text-transform:uppercase; }
.taste-contact-form { display:grid;gap:20px; }
.taste-contact-form__row { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px; }
.taste-contact-form label { display:grid;gap:8px;color:var(--taste-dark);font-size:16px;font-weight:600;line-height:1.6; }
.taste-contact-form input,.taste-contact-form select,.taste-contact-form textarea { width:100%;min-height:52px;border:1px solid #cfd9cf;border-radius:8px;background:#fbfcf9;padding:12px 14px;color:var(--taste-ink);font:inherit;line-height:1.6;transition:border-color .2s,box-shadow .2s,background .2s; }
.taste-contact-form textarea { min-height:150px;resize:vertical; }
.taste-contact-form input:focus,.taste-contact-form select:focus,.taste-contact-form textarea:focus { border-color:var(--taste-green);box-shadow:0 0 0 4px #175c4215;background:#fff;outline:0; }
.taste-contact-form .taste-button { justify-self:start;min-width:190px; }
.taste-contact-honeypot { position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important; }
.taste-contact-notice { margin:0 0 24px;padding:14px 17px;border-radius:8px;font-size:16px;line-height:1.6; }
.taste-contact-notice--success { background:#e7f4e4;color:#165539;border:1px solid #bfdbbc; }
.taste-contact-notice--error { background:#fff0ed;color:#8d3028;border:1px solid #efc9c3; }
.taste-contact-support { background:linear-gradient(155deg,#f6f2e8,#edf5ea); }
.taste-contact-support__items { display:grid;gap:12px; }
.taste-contact-support__items>a { display:grid;grid-template-columns:48px minmax(0,1fr) 22px;align-items:center;gap:15px;padding:16px;border:1px solid #dbe5d7;border-radius:10px;background:#fff;color:var(--taste-dark);text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s; }
.taste-contact-support__items>a:hover { transform:translateY(-2px);border-color:#abc5a5;box-shadow:0 10px 24px #173d3010; }
.taste-contact-support__items strong { display:block;font-size:17px;line-height:1.45; }
.taste-contact-support__items small { display:block;color:#6e796f;font-size:16px;line-height:1.55; }
.taste-contact-support__items>a>.taste-icon { width:19px;height:19px;color:var(--taste-green); }
.taste-contact-hours { margin-top:22px;padding:20px;border-radius:10px;background:var(--taste-dark);color:#fff; }
.taste-contact-hours strong { font-size:17px; }
.taste-contact-hours p { margin:5px 0 0;color:#d7e4d8;font-size:16px;line-height:1.65; }
@media(max-width:991px) {
 .taste-contact-hero { grid-template-columns:1fr;min-height:0;padding:0; }
 .taste-contact-hero__copy { padding:48px 38px; }
 .taste-contact-hero__media { height:350px;margin:0; }
 .taste-contact-hero__media:after { background:linear-gradient(180deg,#eef4e9 0%,transparent 28%); }
 .taste-contact-cards { grid-template-columns:1fr 1fr; }
 .taste-contact-cards article:last-child { grid-column:1/-1; }
 .taste-contact-main { grid-template-columns:1fr; }
}
@media(max-width:767px) {
 .taste-contact-page { padding-bottom:48px; }
 .taste-contact-hero { margin-top:20px;border-radius:12px; }
 .taste-contact-hero__copy { padding:38px 24px; }
 .taste-contact-hero h1 { font-size:38px; }
 .taste-contact-hero p { font-size:16px; }
 .taste-contact-hero__media { height:260px; }
 .taste-contact-cards { grid-template-columns:1fr;padding-top:18px; }
 .taste-contact-cards article:last-child { grid-column:auto; }
 .taste-contact-break { min-height:470px;margin-top:44px;border-radius:12px; }
 .taste-contact-break:after { background:linear-gradient(180deg,#123b2ff2 0%,#123b2fd9 58%,#123b2f38 100%); }
 .taste-contact-break>img { object-position:68% center; }
 .taste-contact-break>div { padding:38px 24px; }
 .taste-contact-break h2 { font-size:32px; }
 .taste-contact-break p { font-size:16px; }
 .taste-contact-main { padding-top:44px; }
 .taste-contact-form-panel,.taste-contact-support { padding:28px 22px;border-radius:12px; }
 .taste-contact-main h2 { font-size:29px; }
 .taste-contact-form__row { grid-template-columns:1fr; }
}

/* Brand-led contact page with a clear, image-free opening message. */
.taste-contact-page { background:linear-gradient(180deg,#fff8f8 0,#fff 34%); }
.taste-contact-hero { display:block;min-height:0;padding:0;border:1px solid #f0d7da;background:linear-gradient(125deg,#112a54 0%,#1a376a 62%,#c91e2a 155%); }
.taste-contact-hero__copy { max-width:800px;padding:72px 78px; }
.taste-contact-hero .taste-eyebrow { color:#ffc2c7; }
.taste-contact-hero h1 { color:#fff; }
.taste-contact-hero p { color:#e6eaf4; }
.taste-contact-hero .taste-button { border-color:#fff;background:#fff;color:#112a54; }
.taste-contact-hero .taste-button:hover { border-color:#df202b;background:#df202b;color:#fff; }
.taste-contact-cards article { border-color:#efdadd;box-shadow:0 8px 25px #112a540c; }
.taste-contact-cards article>span,.taste-contact-support__items>a>span { background:#fff0f1;color:#df202b; }
.taste-contact-form-panel,.taste-contact-support { border-color:#eadbdd; }
.taste-contact-support { background:linear-gradient(155deg,#fff5f5,#f3f5fb); }
.taste-contact-support__items>a { border-color:#eadbdd; }
.taste-contact-support__items>a:hover { border-color:#e4aab1;box-shadow:0 10px 24px #df202b14; }
.taste-contact-support__items>a>.taste-icon { color:#df202b; }
.taste-contact-hours { background:#112a54; }
.taste-contact-notice--success { background:#eef7f1;color:#125a3b;border-color:#c4e4ce; }
.taste-contact-notice--error { background:#fff0f1;color:#a01b25;border-color:#f1c4c8; }
@media(max-width:767px) {
    .taste-contact-hero__copy { padding:38px 24px; }
    .taste-contact-hero h1 { font-size:clamp(30px,9vw,42px); }
}

@media(max-width:767px) {
 .taste-contact-page { padding-bottom:34px; }
 .taste-contact-hero { margin-top:14px; }
 .taste-contact-hero__copy { padding:27px 19px; }
 .taste-contact-hero h1 { margin:10px 0 12px;font-size:29px;line-height:1.08; }
 .taste-contact-hero p { margin-bottom:18px;font-size:13px;line-height:1.6; }
 .taste-contact-hero__media { height:210px; }
 .taste-contact-cards { gap:12px;padding-top:14px; }
 .taste-contact-cards article { gap:12px;padding:16px; }
 .taste-contact-cards article > span,.taste-contact-support__items > a > span { flex-basis:40px;width:40px;height:40px; }
 .taste-contact-cards strong,.taste-contact-cards a { font-size:15px; }
 .taste-contact-cards small,.taste-contact-cards p { font-size:12px; }
 .taste-contact-break { min-height:360px;margin-top:30px; }
 .taste-contact-break > div { padding:28px 19px; }
 .taste-contact-break h2 { margin:10px 0 12px;font-size:26px; }
 .taste-contact-break p { font-size:13px;line-height:1.6; }
 .taste-contact-main { gap:16px;padding-top:30px; }
 .taste-contact-form-panel,.taste-contact-support { padding:21px 17px; }
 .taste-contact-main h2 { margin:7px 0 19px;font-size:24px; }
 .taste-contact-form { gap:14px; }
 .taste-contact-form label { gap:5px;font-size:13px; }
 .taste-contact-form input,.taste-contact-form select,.taste-contact-form textarea { min-height:44px;padding:9px 11px;font-size:13px; }
 .taste-contact-form textarea { min-height:120px; }
 .taste-contact-support__items > a { grid-template-columns:40px minmax(0,1fr) 18px;gap:10px;padding:12px; }
 .taste-contact-support__items strong,.taste-contact-hours strong { font-size:14px; }
 .taste-contact-support__items small,.taste-contact-hours p { font-size:12px; }
 .taste-contact-hours { margin-top:15px;padding:15px; }
}
