.blog-page{background:#fff}
.blog-page .site-header{background:rgba(255,255,255,.96)}
.blog-page .footer-brand .gilles-logo{display:block;width:clamp(260px,38vw,520px);max-width:100%;max-height:78px;height:auto;object-fit:contain}
.blog-page .footer-grid{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:32px}
.blog-page .footer-right{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:18px}
.blog-page .legal-footer-links{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.blog-page .blog-intro-grid a{color:var(--red);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.blog-page .blog-hero{padding:190px 0 92px;background:var(--ink);color:#fff;position:relative;overflow:hidden}
.blog-page .blog-hero::after{content:"";position:absolute;width:400px;height:400px;border:80px solid var(--red);right:-230px;top:90px;transform:rotate(10deg);pointer-events:none}
.blog-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);gap:72px;align-items:center;position:relative;z-index:1}
.blog-breadcrumb{display:flex;gap:10px;align-items:center;margin-bottom:46px;font-size:12px;font-weight:700;color:rgba(255,255,255,.65)}
.blog-breadcrumb a:hover{text-decoration:underline}
.blog-hero h1{max-width:750px;font-size:clamp(42px,5.2vw,72px);line-height:1.04;letter-spacing:-.055em;margin:0}
.blog-hero h1 span{color:var(--red)}
.blog-lead{max-width:690px;margin:29px 0 32px;color:rgba(255,255,255,.78);font-size:18px;line-height:1.7}
.blog-hero-aside{background:#10191e;box-shadow:0 28px 70px rgba(0,0,0,.28)}
.blog-hero-aside img{display:block;width:100%;height:320px;object-fit:cover;object-position:center}
.blog-hero-aside div{display:grid;gap:8px;padding:24px 28px;border-top:3px solid var(--red)}
.blog-hero-aside strong{font-size:17px}
.blog-hero-aside span{font-size:13px;line-height:1.6;color:rgba(255,255,255,.67)}
.blog-section{padding:105px 0}
.blog-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px}
.blog-section h2,.blog-contact h2{font-size:clamp(34px,4.2vw,56px);line-height:1.08;letter-spacing:-.045em;margin:0}
.blog-intro-grid p:not(.eyebrow){color:var(--gray);font-size:16px;line-height:1.85;margin:0 0 20px}
.blog-themes{background:var(--ivory)}
.blog-section-heading{max-width:780px;margin-bottom:45px}
.blog-section-heading>p:last-child{font-size:16px;line-height:1.7;color:var(--gray)}
.blog-theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#ddd;border:1px solid #ddd}
.blog-theme-grid article{padding:30px;min-height:245px;background:#fff}
.blog-theme-grid span{font-size:12px;font-weight:800;color:var(--red)}
.blog-theme-grid h3{font-size:23px;letter-spacing:-.025em;margin:25px 0 10px}
.blog-theme-grid p{font-size:14px;line-height:1.7;color:var(--gray);margin:0}
.blog-contact{padding:90px 0;background:var(--ink);color:#fff}
.blog-contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:center}
.blog-contact p:not(.eyebrow){color:rgba(255,255,255,.7);max-width:650px;font-size:16px;line-height:1.75}
.blog-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.blog-service-link{font-size:13px;font-weight:800;margin-top:10px}
.blog-service-link:hover{text-decoration:underline}
@media(max-width:900px){.blog-hero-grid,.blog-intro-grid,.blog-contact-grid{grid-template-columns:1fr;gap:38px}.blog-hero-aside{max-width:460px}.blog-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.blog-page .blog-hero{padding:150px 0 64px}.blog-page .blog-hero::after{display:none}.blog-breadcrumb{margin-bottom:30px}.blog-lead{font-size:16px}.blog-hero-aside img{height:260px}.blog-section{padding:70px 0}.blog-theme-grid{grid-template-columns:1fr}.blog-theme-grid article{min-height:0}.blog-contact{padding:70px 0}.blog-contact-actions .btn{width:100%;text-align:center}}
.blog-article-card{max-width:760px;border:1px solid #e1e1df;padding:clamp(26px,4vw,42px);background:#fff;box-shadow:0 18px 45px rgba(0,0,0,.06)}
.blog-article-meta{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--red);margin:0 0 15px}
.blog-article-card h3{font-size:clamp(25px,3vw,36px);line-height:1.2;letter-spacing:-.035em;margin:0 0 18px}
.blog-article-card h3 a:hover,.blog-article-link:hover{text-decoration:underline}
.blog-article-card>p:not(.blog-article-meta){max-width:640px;color:var(--gray);line-height:1.7;margin:0 0 22px}
.blog-article-link{font-size:14px;font-weight:800;color:var(--red)}
.article-page .article-hero{padding-bottom:75px}
.article-page .article-hero .container{position:relative;z-index:1}
.article-page .article-hero h1{max-width:920px}
.article-page .blog-breadcrumb{flex-wrap:wrap}
.article-byline{margin:24px 0 0;color:rgba(255,255,255,.68);font-size:14px}
.article-content{max-width:900px;padding-top:72px;padding-bottom:88px}
.article-content p{font-size:17px;line-height:1.8;color:#3b4248;margin:0 0 22px}
.article-content h2{font-size:clamp(27px,3vw,38px);line-height:1.22;letter-spacing:-.035em;margin:55px 0 21px;scroll-margin-top:155px}
.article-content a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.article-content strong{color:var(--ink)}
@media(max-width:640px){.article-page .article-hero{padding-bottom:55px}.article-content{padding-top:48px;padding-bottom:64px}.article-content p{font-size:16px;line-height:1.75}.article-content h2{margin-top:42px;scroll-margin-top:120px}}
@media(max-width:640px){.blog-page .footer-grid{flex-direction:column;align-items:center;gap:18px}.blog-page .footer-right{justify-content:center;text-align:center}.blog-page .footer-brand .gilles-logo{width:min(330px,100%)}}
