@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600&family=Archivo:wght@400;500;600;700&display=swap');
:root{--gf-bone:#F7F3EC;--gf-sand:#EDE4D6;--gf-white:#FFFFFF;--gf-copper:#B87333;--gf-copper-dark:#96591F;--gf-copper-tint:#F3E4D3;--gf-forest:#2E4636;--gf-forest-deep:#22362A;--gf-moss:#728063;--gf-charcoal:#26221C;--gf-stone:#6B6459;--gf-line:#DDD3C2;--gf-success:#3F7A4E;--gf-error:#B3402E;--gf-font-heading:'Fraunces',Georgia,serif;--gf-font-body:'Archivo',Helvetica,Arial,sans-serif;--gf-radius-btn:12px;--gf-radius-card:16px;--gf-space-section:clamp(40px,5.5vw,72px)}
.gf-section{padding:var(--gf-space-section) 0}
.gf-container{max-width:1200px;margin:0 auto;padding:0 24px}
.gf-overline{font-family:var(--gf-font-body);font-weight:600;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gf-copper);margin:0 0 14px}
.gf-h1{font-family:var(--gf-font-heading);font-weight:600;font-size:clamp(38px,5vw,58px);line-height:1.08;letter-spacing:-.01em;margin:0 0 18px;color:var(--gf-charcoal)}
.gf-h2{font-family:var(--gf-font-heading);font-weight:600;font-size:clamp(28px,3.5vw,38px);line-height:1.14;margin:0 0 14px;color:var(--gf-charcoal)}
.gf-h3{font-family:var(--gf-font-heading);font-weight:600;font-size:22px;line-height:1.2;margin:0 0 8px;color:var(--gf-charcoal)}
.gf-body{font-family:var(--gf-font-body);font-size:16px;line-height:1.65;color:var(--gf-stone);margin:0 0 16px}
.gf-small{font-family:var(--gf-font-body);font-size:13.5px;line-height:1.5;color:var(--gf-stone)}
.gf-btn{display:inline-block;font-family:var(--gf-font-body);font-weight:600;font-size:15px;line-height:1;padding:17px 32px;border-radius:var(--gf-radius-btn);text-decoration:none;text-align:center;border:1.5px solid transparent;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}
.gf-btn--primary{background:var(--gf-copper);color:#fff}
.gf-btn--primary:hover{background:var(--gf-copper-dark);color:#fff}
.gf-btn--forest{background:var(--gf-forest);color:var(--gf-bone)}
.gf-btn--forest:hover{background:var(--gf-forest-deep)}
.gf-btn--outline{background:transparent;color:var(--gf-forest);border-color:var(--gf-forest)}
.gf-btn--outline:hover{background:var(--gf-forest);color:var(--gf-bone)}
.gf-btn--light{background:transparent;color:var(--gf-bone);border-color:rgba(247,243,236,.65)}
.gf-btn--light:hover{background:var(--gf-bone);color:var(--gf-charcoal);border-color:var(--gf-bone)}
.gf-check{list-style:none;margin:0 0 22px;padding:0}
.gf-check li{position:relative;padding:7px 0 7px 30px;font-family:var(--gf-font-body);font-size:15.5px;line-height:1.5;color:var(--gf-charcoal)}
.gf-check li:before{content:'';position:absolute;left:0;top:11px;width:16px;height:16px;border-radius:50%;background:var(--gf-copper-tint)}
.gf-check li:after{content:'';position:absolute;left:4.5px;top:14.5px;width:6px;height:3.5px;border-left:2px solid var(--gf-copper-dark);border-bottom:2px solid var(--gf-copper-dark);transform:rotate(-45deg)}
.gf-img-cover{width:100%;height:100%;object-fit:cover;display:block}
.gf-rounded{border-radius:var(--gf-radius-card);overflow:hidden}
.gf-stars{color:var(--gf-copper);letter-spacing:2px;font-size:15px}
.gf-on-dark .gf-h1,.gf-on-dark .gf-h2,.gf-on-dark .gf-h3{color:var(--gf-bone)}
.gf-on-dark .gf-body,.gf-on-dark .gf-small{color:rgba(247,243,236,.75)}
