/* MASTER AUTHORITY SPACING */
.wrap, .dcc-sec, .section-gap { 
    width: 100%; 
    max-width: 1240px; 
    margin: 0 auto !important; 
    padding: 0 20px !important; 
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .wrap, .dcc-sec, .section-gap { padding: 0 40px !important; }
}

/* THE SPUN ® BRANDING RULE - FIXED FOR REGISTERED CIRCLE */
.spun-r {
    font-size: 0.45em; /* Slightly smaller for the circle version */
    vertical-align: top;
    position: relative;
    top: -0.2em; /* Adjusted for the ® symbol height */
    margin-left: 2px;
    font-weight: 400; /* Regular weight looks better for the circle ® */
    line-height: 1;
}

/* HERO IMAGE */
.dcc-hero-top { width: 100%; margin-top: 20px; margin-bottom: 30px; }
.dcc-hero-top img { width: 100%; height: auto; border-radius: 24px; display: block; box-shadow: 0 15px 45px rgba(0,0,0,0.15); }

/* CARDS & TEXT STYLE */
.dcc-card { background: #fff; border: 1px solid #eee; padding: clamp(25px, 5vw, 50px); border-radius: 20px; margin-bottom: 35px; }
.seo-rich-text { line-height: 1.8; color: #444; font-size: 1.05rem; }
.seo-rich-text h2, .seo-rich-text h3 { color: #111; margin-top: 35px; font-weight: 800; border-bottom: 1px solid #eee; padding-bottom: 10px; }
.highlight-box { border-left: 5px solid #c5a059; padding-left: 20px; background: #fdfaf4; padding: 25px; margin: 25px 0; border-radius: 0 15px 15px 0; }

/* LINK GRID */
.link-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 15px; margin-top: 25px;
}
.link-grid a {
    background: #fff; border: 1px solid #eee; padding: 15px; border-radius: 12px;
    text-decoration: none; color: #333; transition: 0.3s; display: block;
}
.link-grid a:hover { border-color: #c5a059; transform: translateY(-3px); box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.deal-link { color: #c5a059; font-weight: 700; text-decoration: none; border-bottom: 1px dashed #c5a059; }

