/*=========================================================
  WAGS FOR HOPE SITE HEADER
=========================================================*/
.wfh-site-header{
    position:relative;
    z-index:1000;
    width:100%;
    background:#112b57;
    border-bottom:4px solid #ec168c;
    box-shadow:0 5px 18px rgba(7,20,43,.18);
}
.wfh-header-inner{
    width:min(1160px,calc(100% - 40px));
    min-height:86px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin:0 auto;
}
.wfh-logo-link{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    text-decoration:none;
}
.wfh-logo{
    width:260px;
    max-height:64px;
    object-fit:contain;
    object-position:left center;
}
.wfh-main-nav{margin-left:auto;}
.wfh-menu{
    display:flex;
    align-items:center;
    gap:4px;
    margin:0;
    padding:0;
    list-style:none;
}
.wfh-menu>li{position:relative;}
.wfh-menu a,.wfh-submenu-toggle{
    min-height:86px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:0 14px;
    border:0;
    color:#fff;
    background:transparent;
    font-family:"DM Sans",Arial,sans-serif;
    font-size:.98rem;
    font-weight:700;
    line-height:1;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
}
.wfh-menu>li>a::after,.wfh-submenu-toggle::after{
    content:"";
    position:absolute;
    left:14px;
    right:14px;
    top:20px;
    height:3px;
    background:#ec168c;
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .2s ease;
}
.wfh-menu>li:hover>a::after,.wfh-menu>li:focus-within>a::after,.wfh-menu-parent:hover>.wfh-submenu-toggle::after,.wfh-menu-parent:focus-within>.wfh-submenu-toggle::after,.wfh-current-menu-item>a::after{
    transform:scaleX(1);
}
.wfh-menu-arrow{
    width:0;
    height:0;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
    border-top:5px solid currentColor;
    transition:transform .2s ease;
}
.wfh-menu-parent:hover>.wfh-submenu,.wfh-menu-parent:focus-within>.wfh-submenu,.wfh-menu-parent.wfh-submenu-open>.wfh-submenu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
}
.wfh-menu-parent.wfh-submenu-open .wfh-menu-arrow{transform:rotate(180deg);}
.wfh-submenu{
    position:absolute;
    top:calc(100% - 8px);
    left:0;
    width:260px;
    margin:0;
    padding:10px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:0 0 14px 14px;
    background:#112b57;
    box-shadow:0 18px 34px rgba(4,14,31,.28);
    list-style:none;
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    pointer-events:none;
    transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
.wfh-submenu li+li{border-top:1px solid rgba(255,255,255,.1);}
.wfh-submenu a{
    min-height:auto;
    padding:13px 14px;
    border-radius:8px;
    color:#fff;
    font-size:.92rem;
    line-height:1.3;
    white-space:normal;
}
.wfh-submenu a:hover,.wfh-submenu a:focus{background:rgba(255,255,255,.1);}
.wfh-cart-item a{
    position:relative;
    min-width:48px;
    justify-content:center;
    padding:0 10px;
}
.wfh-cart-icon{font-size:1.15rem;}
.wfh-cart-count{
    position:absolute;
    top:24px;
    right:2px;
    min-width:18px;
    height:18px;
    display:grid;
    place-items:center;
    padding:0 4px;
    border-radius:999px;
    color:#fff;
    background:#ef5b56;
    font-size:.65rem;
    line-height:1;
}
.wfh-menu-toggle{
    display:none;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    width:48px;
    height:48px;
    padding:10px;
    border:1px solid rgba(255,255,255,.3);
    border-radius:10px;
    color:#fff;
    background:transparent;
    cursor:pointer;
}
.wfh-menu-toggle-line{
    width:24px;
    height:2px;
    display:block;
    background:#fff;
}
.wfh-menu-toggle-label{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
}
@media(max-width:1050px){
    .wfh-logo{width:220px;}
    .wfh-menu a,.wfh-submenu-toggle{padding:0 10px;font-size:.9rem;}
}
@media(max-width:860px){
    .wfh-header-inner{
        min-height:74px;
        position:relative;
        width:min(100% - 28px,1160px);
    }
    .wfh-logo{width:205px;max-height:54px;}
    .wfh-menu-toggle{display:flex;gap:5px;}
    .wfh-main-nav{
        position:absolute;
        top:100%;
        left:-14px;
        right:-14px;
        display:none;
        margin:0;
        border-top:1px solid rgba(255,255,255,.12);
        background:#112b57;
        box-shadow:0 18px 30px rgba(4,14,31,.28);
    }
    .wfh-main-nav.wfh-nav-open{display:block;}
    .wfh-menu{display:block;padding:10px 14px 18px;}
    .wfh-menu>li{border-bottom:1px solid rgba(255,255,255,.1);}
    .wfh-menu>li:last-child{border-bottom:0;}
    .wfh-menu a,.wfh-submenu-toggle{
        width:100%;
        min-height:50px;
        justify-content:space-between;
        padding:0 10px;
        text-align:left;
    }
    .wfh-menu>li>a::after,.wfh-submenu-toggle::after{display:none;}
    .wfh-submenu{
        position:static;
        width:auto;
        display:none;
        margin:0 0 8px;
        padding:0 0 0 16px;
        border:0;
        border-radius:0;
        box-shadow:none;
        opacity:1;
        visibility:visible;
        transform:none;
        pointer-events:auto;
    }
    .wfh-menu-parent.wfh-submenu-open>.wfh-submenu{display:block;}
    .wfh-submenu a{min-height:44px;padding:9px 12px;}
    .wfh-current-menu-item>a{color:#ffd5eb;}
    .wfh-cart-item a{justify-content:flex-start;}
    .wfh-cart-count{position:static;margin-left:8px;}
}

:root {
    --wine: #702c68;
    --wine-dark: #401738;
    --wine-light: #a05496;
    --gold: #d8b56d;
    --cream: #fffaf2;
    --white: #ffffff;
    --charcoal: #252025;
    --muted: #6d646b;
    --border: #eadde7;
    --shadow: 0 18px 45px rgba(64, 23, 56, 0.14);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--charcoal);
    background: var(--cream);
    font-family: "DM Sans", Arial, sans-serif;
    line-height: 1.65;
}

img {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
}

.howl-container {
    width: min(1160px, calc(100% - 40px));
    margin: 0 auto;
}

.howl-section {
    padding: 88px 0;
}

.howl-section-white {
    background: var(--white);
}

.howl-eyebrow {
    margin: 0 0 12px;
    color: var(--wine);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.howl-title {
    margin: 0 0 20px;
    color: var(--wine-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(2.2rem, 5vw, 4rem);
    line-height: 1.08;
}

.howl-section-title {
    margin: 0 0 18px;
    color: var(--wine-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(2rem, 4vw, 3.15rem);
    line-height: 1.15;
}

.howl-lead {
    max-width: 760px;
    margin: 0;
    color: var(--muted);
    font-size: 1.15rem;
}

.howl-button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.howl-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 13px 26px;
    border: 2px solid transparent;
    border-radius: 999px;
    font-size: 0.98rem;
    font-weight: 700;
    text-decoration: none;
    transition:
            transform 0.2s ease,
            background 0.2s ease,
            border-color 0.2s ease;
}

.howl-button:hover {
    transform: translateY(-2px);
}

.howl-button-primary {
    color: var(--white);
    background: var(--wine);
}

.howl-button-primary:hover {
    background: var(--wine-dark);
}

.howl-button-secondary {
    color: var(--wine-dark);
    background: var(--gold);
}

.howl-button-secondary:hover {
    background: #e5c783;
}

.howl-button-outline {
    color: var(--white);
    border-color: rgba(255, 255, 255, 0.75);
    background: transparent;
}

.howl-button-outline:hover {
    background: rgba(255, 255, 255, 0.12);
}

/* Hero */

.howl-hero {
    position: relative;
    min-height: 680px;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: var(--white);
    background-image:
            linear-gradient(
                    90deg,
                    rgba(24, 8, 20, 0.96) 0%,
                    rgba(45, 14, 39, 0.9) 29%,
                    rgba(45, 14, 39, 0.57) 46%,
                    rgba(20, 8, 17, 0.12) 66%,
                    rgba(20, 8, 17, 0.02) 100%
            ),
            url("https://wagsforhope.org/howl-o-wine/img/howl-o-wine.jpg");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.howl-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 150px;
    background: linear-gradient(
            to bottom,
            transparent,
            rgba(20, 8, 17, 0.52)
    );
}

.howl-hero-content {
    position: relative;
    z-index: 2;
    width: 46%;
    max-width: 570px;
    padding: 90px 0;
}

.howl-hero .howl-eyebrow {
    color: var(--gold);
}

.howl-hero .howl-title {
    color: var(--white);
    font-size: clamp(3rem, 6vw, 5.25rem);
    text-shadow: 0 6px 28px rgba(0, 0, 0, 0.35);
}

.howl-hero-subtitle {
    max-width: 540px;
    margin: 0;
    font-size: clamp(1.1rem, 2vw, 1.35rem);
}

.howl-event-date {
    display: inline-flex;
    align-items: center;
    text-align:center;
    gap: 10px;
    margin-top: 25px;
    padding: 10px 17px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 999px;
    background: rgba(20, 8, 17, 0.48);
    backdrop-filter: blur(8px);
    font-weight: 700;
}

/* Mission */
.howl-intro-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:60px;
    align-items:center;
}

.howl-intro-left{
    display:flex;
    flex-direction:column;
    gap:28px;
}

.howl-intro-copy{
    margin:0;
}

.howl-intro-copy p:not(.howl-eyebrow):not(.howl-lead){
    margin:22px 0 0;
}

.howl-quote-card{
    position:relative;
    padding:48px 54px;
    border-radius:28px;
    color:var(--white);
    background:radial-gradient(circle at top right,rgba(216,181,109,.18),transparent 42%),linear-gradient(135deg,#5b1d53 0%,#45163f 100%);
    box-shadow:0 18px 42px rgba(48,16,43,.18);
    overflow:hidden;
}
.howl-quote-mark{
    position:absolute;
    top:12px;
    left:26px;
    color:rgba(216,181,109,.25);
    font-family:"Playfair Display",Georgia,serif;
    font-size:7rem;
    line-height:1;
}
.howl-quote-card blockquote{
    position:relative;
    z-index:2;
    margin:0;
    font-family:"Playfair Display",Georgia,serif;
    font-size:2rem;
    font-style:italic;
    line-height:1.45;
    font-weight:500;
}
.howl-quote-emphasis{
    position:relative;
    z-index:2;
    margin-top:18px;
    color:var(--gold);
    font-family:"Playfair Display",Georgia,serif;
    font-size:2.35rem;
    font-weight:700;
    letter-spacing:.02em;
}

.howl-intro-image{
    display:flex;
    justify-content:center;
}

.howl-intro-image img{
    width:100%;
    max-width:420px;

    border-radius:28px;

    box-shadow:0 20px 45px rgba(0,0,0,.18);
}

/*.howl-intro-grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 60px;
    align-items: center;
}

.howl-intro-copy p:not(.howl-eyebrow):not(.howl-lead) {
    margin: 22px 0 0;
}

.howl-quote-card {
    padding: 44px;
    border-radius: 28px;
    color: var(--white);
    background:
            radial-gradient(
                    circle at top right,
                    rgba(216, 181, 109, 0.25),
                    transparent 45%
            ),
            var(--wine-dark);
    box-shadow: var(--shadow);
}

.howl-quote-card p {
    margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(1.55rem, 3vw, 2.25rem);
    line-height: 1.35;
}

.howl-quote-card strong {
    color: var(--gold);
} */

/* Impact cards */

.howl-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-top: 42px;
}

.howl-card {
    padding: 30px;
    border: 1px solid var(--border);
    border-radius: 22px;
    background: var(--white);
    box-shadow: 0 12px 30px rgba(64, 23, 56, 0.07);
}

.howl-card-icon {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    border-radius: 18px;
    color: var(--white);
    background: var(--wine);
    font-size: 1.7rem;
}

.howl-card h3 {
    margin: 0 0 10px;
    color: var(--wine-dark);
    font-size: 1.2rem;
}

.howl-card p {
    margin: 0;
    color: var(--muted);
}

/* Event experience */

.howl-experience {
    position: relative;
    overflow: hidden;
    color: var(--white);
    background: var(--wine-dark);
}

.howl-experience::before {
    content: "🐾";
    position: absolute;
    top: -90px;
    right: 3%;
    opacity: 0.06;
    font-size: 26rem;
    transform: rotate(-15deg);
}

.howl-experience .howl-section-title {
    color: var(--white);
}

.howl-experience .howl-eyebrow {
    color: var(--gold);
}

.howl-experience .howl-lead {
    color: rgba(255, 255, 255, 0.78);
}

.howl-experience-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 42px;
}

.howl-experience-item {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 82px;
    padding: 18px 20px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.07);
}

.howl-experience-item span {
    font-size: 1.55rem;
}

.howl-experience-item strong {
    font-size: 1rem;
}

/* Donations */
.howl-donate-layout{
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
    gap:38px;
    align-items:stretch;
    margin-top:42px;
}
.howl-giving-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    margin:0;
}
.howl-giving-card{
    min-height:285px;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:30px 26px;
    border:1px solid var(--border);
    border-radius:22px;
    text-align:center;
    background:linear-gradient(to bottom,#fff 0%,#fffafc 100%);
    box-shadow:0 12px 28px rgba(64,23,56,.07);
    transition:transform .2s ease,box-shadow .2s ease;
}
.howl-giving-card:hover{
    transform:translateY(-5px);
    box-shadow:var(--shadow);
}
.howl-giving-amount{
    margin-bottom:14px;
    color:var(--wine);
    font-family:"Playfair Display",Georgia,serif;
    font-size:2.5rem;
    font-weight:700;
    line-height:1.08;
}
.howl-giving-choice{font-size:2.15rem;}
.howl-giving-card p{
    margin:0 0 24px;
    color:var(--muted);
    line-height:1.55;
}
.howl-giving-card .howl-button{
    width:100%;
    max-width:190px;
    margin-top:auto;
}
.howl-donate-image{
    display:flex;
    align-items:stretch;
    justify-content:center;
    padding:8px;
}
.howl-donate-image img{
    width:100%;
    height:100%;
    min-height:590px;
    display:block;
    object-fit:cover;
    object-position:center;
    border:4px solid #e8d8ea;
    outline:1px solid #7b3378;
    outline-offset:4px;
    border-radius:28px;
    box-shadow:0 18px 42px rgba(0,0,0,.14);
    transition:transform .25s ease,box-shadow .25s ease;
}
.howl-donate-image img:hover{
    transform:translateY(-3px);
    box-shadow:0 24px 50px rgba(0,0,0,.2);
}
.howl-giving-note{
    margin-top:24px;
    color:var(--muted);
    font-size:.95rem;
    text-align:center;
}

/* Final call to action */
.howl-final-cta{
    position:relative;
    overflow:hidden;
    padding:90px 0;
    color:var(--white);
    text-align:center;
    background-image:linear-gradient(rgba(35,11,30,.84),rgba(35,11,30,.93)),url("https://wagsforhope.org/howl-o-wine/img/howl-o-wine.jpg");
    background-position:center 66%;
    background-size:cover;
    background-repeat:no-repeat;
}
.howl-final-cta-content{
    position:relative;
    z-index:2;
    max-width:800px;
    margin:0 auto;
}
.howl-final-cta .howl-eyebrow{color:var(--gold);}
.howl-final-cta .howl-section-title{color:var(--white);}
.howl-final-cta p{font-size:1.14rem;}
.howl-final-cta .howl-button-row{justify-content:center;}

/* Footer */
.howl-footer{
    padding:30px 0;
    color:rgba(255,255,255,.72);
    background:#1c111a;
    text-align:center;
}
.howl-footer p{margin:5px 0;}
.howl-footer a{color:var(--gold);}

/* Donation layout */
.howl-donate-layout{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(320px,.95fr);
    gap:28px;
    align-items:center;
}
.howl-donate-image{
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:center;
    padding:12px;
}
.howl-donate-image img{
    width:100%;
    max-width:380px;
    display:block;
    border:4px solid #e8d8ea;
    outline:1px solid #7b3378;
    outline-offset:4px;
    border-radius:28px;
    box-shadow:0 14px 35px rgba(0,0,0,.12);
    transition:.25s ease;
}
.howl-donate-image img:hover{
    transform:translateY(-3px);
    box-shadow:0 20px 45px rgba(0,0,0,.18);
}

/* Event information */
#tickets{
    position:relative;
    overflow:hidden;
    color:var(--white);
    background-image:linear-gradient(rgba(38,16,36,.72),rgba(38,16,36,.82)),url("https://wagsforhope.org/howl-o-wine/img/winery.jpg");
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
}
#tickets .howl-container{position:relative;z-index:2;}
#tickets .howl-eyebrow{color:var(--gold);}
#tickets .howl-section-title{color:var(--white);}
#tickets .howl-lead{margin:0 auto;color:rgba(255,255,255,.9);}
.howl-event-heading{
    max-width:800px;
    margin:0 auto 38px;
    text-align:center;
}
.howl-attraction-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:42px;
}
.howl-attraction-card{
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.24);
    border-radius:22px;
    background:var(--white);
    box-shadow:0 16px 38px rgba(13,4,12,.28);
    transition:transform .25s ease,box-shadow .25s ease;
}
.howl-attraction-card:hover{
    transform:translateY(-5px);
    box-shadow:0 22px 48px rgba(13,4,12,.38);
}
.howl-attraction-image{
    position:relative;
    height:275px;
    overflow:hidden;
    background-color:var(--wine-dark);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}
.howl-attraction-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(31,10,27,.56),transparent 62%);
}
.howl-attraction-badge{
    position:absolute;
    z-index:2;
    left:16px;
    bottom:16px;
    max-width:calc(100% - 32px);
    padding:7px 14px;
    border-radius:999px;
    color:var(--wine-dark);
    background:rgba(216,181,109,.96);
    box-shadow:0 5px 14px rgba(0,0,0,.18);
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.045em;
    line-height:1.2;
    text-transform:uppercase;
}
.howl-attraction-content{padding:26px;}
.howl-attraction-content h3{
    margin:0 0 10px;
    color:var(--wine-dark);
    font-family:"Playfair Display",Georgia,serif;
    font-size:1.45rem;
    line-height:1.2;
}
.howl-attraction-content p{
    margin:0;
    color:var(--muted);
    line-height:1.6;
}
.howl-attraction-content strong{color:var(--wine);}
.howl-attraction-costume{background-image:url("../img/pet-costume-contest.jpg");}
.howl-attraction-wine{background-image:url("../img/wine-tasting.jpg");}
.howl-attraction-glass{background-image:url("../img/insulated-wine-glass.jpg");}
.howl-attraction-food{background-image:url("../img/food-truck.jpg");}
.howl-attraction-music{background-image:url("../img/live-music.jpg");}
.howl-attraction-raffle{background-image:url("../img/donate-and-dash-raffle.jpg");}
.howl-event-details-row{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-top:34px;
}
.howl-event-detail-card{
    display:flex;
    align-items:flex-start;
    gap:13px;
    min-width:0;
    padding:18px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:18px;
    background:rgba(49,34,48,.82);
    backdrop-filter:blur(10px);
    box-shadow:0 10px 24px rgba(13,4,12,.18);
}
.howl-event-detail-icon{
    width:44px;
    height:44px;
    flex:0 0 44px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.34);
    border-radius:50%;
    background:rgba(255,255,255,.15);
    font-size:1.2rem;
}
.howl-event-detail-card span{
    display:block;
    margin-bottom:3px;
    color:var(--gold);
    font-size:.7rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.howl-event-detail-card strong{
    display:block;
    color:var(--white);
    font-size:.94rem;
    line-height:1.35;
}
.howl-event-detail-card small{
    display:block;
    margin-top:4px;
    color:rgba(255,255,255,.78);
    font-size:.78rem;
    line-height:1.4;
}
.howl-event-actions{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;
}

/* Responsive */
@media(max-width:1000px){
    .howl-donate-layout{grid-template-columns:1fr;}
    .howl-donate-image{max-width:450px;margin:0 auto;}
    .howl-event-details-row{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:950px){
    .howl-hero{min-height:650px;background-position:58% center;}
    .howl-hero-content{width:56%;max-width:500px;}
    .howl-intro-grid{grid-template-columns:1fr;}
    .howl-card-grid,.howl-experience-grid{grid-template-columns:repeat(2,1fr);}
    .howl-giving-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:992px){
    .howl-attraction-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:650px){
    .howl-attraction-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
    .howl-container{width:min(100% - 28px,1160px);}
    .howl-section{padding:64px 0;}
    .howl-hero{
        min-height:700px;
        align-items:flex-end;
        background-image:linear-gradient(to bottom,rgba(20,8,17,.18) 0%,rgba(20,8,17,.42) 36%,rgba(20,8,17,.92) 72%,rgba(20,8,17,.98) 100%),url("https://wagsforhope.org/howl-o-wine/img/howl-o-wine.jpg");
        background-position:57% center;
    }
    .howl-hero-content{width:100%;max-width:none;padding:300px 0 48px;}
    .howl-hero .howl-title{font-size:clamp(3rem,16vw,4.5rem);}
    .howl-button-row{flex-direction:column;}
    .howl-button-row .howl-button{width:100%;}
    .howl-card-grid,.howl-experience-grid,.howl-giving-grid,.howl-sponsor-list{grid-template-columns:1fr;}
    .howl-quote-card,.howl-sponsor-box{padding:32px 25px;}
    .howl-giving-card p{min-height:auto;}
    .howl-giving-grid{grid-template-columns:1fr;}
    .howl-event-heading{margin-bottom:28px;text-align:left;}
    .howl-attraction-image{height:240px;}
    .howl-event-details-row{grid-template-columns:1fr;}
    .howl-event-actions{flex-direction:column;}
    .howl-event-actions .howl-button{width:100%;}
}
