/* ══════════════════════════════════════════════
   GAOA Website Light — Art School Theme
   Inspired by coming-soon-light.html
   ══════════════════════════════════════════════ */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  --orange:#C8531A;
  --orange-light:#E07040;
  --orange-pale:#F5DEC8;
  --brown:#2A1206;
  --brown-mid:#6B3A1A;
  --cream:#FFFAF5;
  --paper:#FDF3E7;
  --paper-dark:#F5E8D0;
  --white:#FFFFFF;
  --text-primary:#2A1206;
  --text-secondary:#4A2810;
  --text-muted:#8C6040;
  --text-light:#B07850;
  --border:rgba(200,83,26,0.16);
  --border-strong:rgba(200,83,26,0.35);
  --nav-bg:#0E0800;
  --nav-text:#FAF6EE;
  --section-gap:96px;
  --card-shadow:0 2px 24px rgba(200,83,26,0.07),0 0 0 1px rgba(200,83,26,0.08);
}

html{scroll-behavior:smooth}
body{background:var(--cream);color:var(--text-primary);font-family:'Montserrat',sans-serif;line-height:1.7;overflow-x:hidden}

/* ── Linen texture ── */
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(180,80,20,0.022) 3px,rgba(180,80,20,0.022) 4px),
    repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(180,80,20,0.016) 3px,rgba(180,80,20,0.016) 4px)}

/* ── Typography — Bigger Base ── */
h1,h2,h3,h4,h5{font-family:'Cormorant Garamond',serif;font-weight:300;line-height:1.18;color:var(--text-primary)}
h1{font-size:clamp(42px,7vw,76px)}
h2{font-size:clamp(34px,5vw,54px)}
h3{font-size:clamp(24px,3vw,34px)}
h4{font-size:clamp(20px,2.5vw,26px)}
h5{font-size:clamp(16px,2vw,20px)}
p{font-size:16px;line-height:1.85;color:var(--text-muted)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* ── Layout ── */
.container{max-width:1160px;margin:0 auto;padding:0 28px;position:relative;z-index:1}
.section{padding:var(--section-gap) 0}
.section-alt{background:var(--paper)}
.section-paper{background:var(--paper-dark)}

/* ── Label + Divider ── */
.label-fine{font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:500;letter-spacing:0.38em;text-transform:uppercase;color:var(--orange);display:block;margin-bottom:12px}
.divider{display:flex;align-items:center;gap:14px;margin:18px 0 36px}
.divider-line{flex:1;max-width:90px;height:1px;background:linear-gradient(90deg,transparent,var(--orange))}
.divider-line.r{background:linear-gradient(90deg,var(--orange),transparent)}
.divider-diamond{width:6px;height:6px;background:var(--orange);transform:rotate(45deg);flex-shrink:0}
.text-center{text-align:center}
.text-center .divider{justify-content:center}

/* ── Ornamental corner frame ── */
.orn-frame{position:relative;padding:40px}
.orn-frame::before{content:'';position:absolute;top:0;left:0;width:36px;height:36px;border-top:1.5px solid var(--border-strong);border-left:1.5px solid var(--border-strong)}
.orn-frame::after{content:'';position:absolute;bottom:0;right:0;width:36px;height:36px;border-bottom:1.5px solid var(--border-strong);border-right:1.5px solid var(--border-strong)}

/* ── Buttons ── */
.btn{display:inline-block;padding:13px 32px;font-family:'Montserrat',sans-serif;font-size:10.5px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;cursor:pointer;transition:all 0.22s;border:none;position:relative;z-index:1}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:var(--orange-light)}
.btn-outline{background:transparent;color:var(--orange);border:1px solid var(--orange)}
.btn-outline:hover{background:var(--orange);color:#fff}
.btn-dark{background:var(--brown);color:var(--cream)}
.btn-dark:hover{background:var(--orange);color:#fff}
.btn-outline-white{background:transparent;color:#FAF6EE;border:1px solid rgba(250,246,238,0.4)}
.btn-outline-white:hover{background:var(--orange);color:#fff;border-color:var(--orange)}

/* ── Navigation ── */
.nav{
  position:sticky;top:0;z-index:1000;
  background:var(--cream);
  border-bottom:1px solid rgba(200,83,26,0.18);
  box-shadow:0 2px 24px rgba(200,83,26,0.07);
}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:90px;max-width:1160px;margin:0 auto;padding:0 36px}

/* Logo */
.nav-logo{display:flex;align-items:center;text-decoration:none}
.nav-logo-img{
  height:68px;
  width:auto;
  max-width:280px;
  object-fit:contain;
  display:block;
  transition:opacity .2s;
}
.nav-logo:hover .nav-logo-img{opacity:.85}

/* Nav links */
.nav-links{display:flex;align-items:center;gap:36px;list-style:none}
.nav-links a{
  font-family:'Montserrat',sans-serif;
  font-size:10.5px;font-weight:600;
  letter-spacing:0.2em;text-transform:uppercase;
  color:var(--text-secondary);
  transition:color 0.2s;
  position:relative;padding-bottom:4px;
}
.nav-links a::after{
  content:'';position:absolute;bottom:0;left:0;
  width:0;height:2px;
  background:var(--orange);
  border-radius:2px;
  transition:width 0.25s ease;
}
.nav-links a:hover{color:var(--text-primary)}
.nav-links a.active{color:var(--orange)}
.nav-links a:hover::after,.nav-links a.active::after{width:100%}

/* CTA button */
.nav-cta{
  font-family:'Montserrat',sans-serif;
  font-size:10px;font-weight:700;
  letter-spacing:0.24em;text-transform:uppercase;
  padding:11px 24px;
  background:transparent;
  color:var(--orange);
  border:2px solid var(--orange);
  border-radius:6px;
  text-decoration:none;
  transition:background 0.22s,color 0.22s;
  white-space:nowrap;
}
.nav-cta:hover{background:var(--orange);color:#fff}

/* Hamburger */
.nav-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.nav-hamburger span{display:block;width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:background 0.2s}
.nav-hamburger:hover span{background:var(--orange)}

/* Mobile drawer */
.nav-mobile{
  display:none;
  position:fixed;inset:0;top:80px;
  background:var(--cream);
  border-top:1px solid rgba(200,83,26,0.15);
  box-shadow:0 8px 32px rgba(200,83,26,0.1);
  z-index:999;padding:28px 36px;
  flex-direction:column;
}
.nav-mobile.open{display:flex}
.nav-mobile a{
  display:block;padding:15px 0;
  font-family:'Montserrat',sans-serif;
  font-size:12px;font-weight:600;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--text-secondary);
  border-bottom:1px solid rgba(200,83,26,0.1);
  transition:color 0.2s,padding-left 0.2s;
}
.nav-mobile a:hover,.nav-mobile a.active{color:var(--orange);padding-left:8px}

/* ── Page Hero (dark, like coming-soon) ── */
.page-hero{background:var(--nav-bg);padding:72px 0 60px;text-align:center;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(255,255,255,0.01) 3px,rgba(255,255,255,0.01) 4px),repeating-linear-gradient(90deg,transparent,transparent 3px,rgba(255,255,255,0.008) 3px,rgba(255,255,255,0.008) 4px)}
.page-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 50% 0%,rgba(200,83,26,0.12) 0%,transparent 70%);pointer-events:none}
.page-hero h1{color:#FAF6EE;position:relative;z-index:1;font-size:clamp(38px,6vw,64px)}
.page-hero .label-fine{color:rgba(200,83,26,0.85);justify-content:center;display:flex;position:relative;z-index:1}
.page-hero p{color:rgba(250,246,238,0.58);font-size:17px;max-width:520px;margin:14px auto 0;position:relative;z-index:1;line-height:1.75}
.breadcrumb{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10.5px;letter-spacing:0.22em;text-transform:uppercase;color:rgba(250,246,238,0.35);margin-top:24px;position:relative;z-index:1}
.breadcrumb a{color:rgba(250,246,238,0.35);transition:color 0.2s}
.breadcrumb a:hover{color:var(--orange-light)}
.breadcrumb span{color:var(--orange-light)}

/* ── Gallery Card ── */
.g-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);transition:all 0.25s}
.g-card:hover{box-shadow:0 12px 48px rgba(200,83,26,0.13),0 0 0 1px rgba(200,83,26,0.2);transform:translateY(-4px)}

/* ── Course Card ── */
.course-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);transition:all 0.25s;display:grid;grid-template-rows:auto 1fr auto}
.course-card:hover{box-shadow:0 12px 48px rgba(200,83,26,0.13);transform:translateY(-4px)}
.course-banner{width:100%;height:172px;display:flex;align-items:center;justify-content:center;font-size:48px;position:relative}
.course-badge{position:absolute;top:14px;right:14px;background:var(--orange);color:#fff;font-size:9px;font-weight:500;letter-spacing:0.24em;text-transform:uppercase;padding:5px 12px}
.course-content{padding:24px 26px}
.course-content h3{font-size:26px;margin-bottom:10px;color:var(--text-primary)}
.course-content p{font-size:15px;line-height:1.8;color:var(--text-muted);margin-bottom:18px}
.course-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}
.course-tag{font-size:9.5px;letter-spacing:0.2em;text-transform:uppercase;padding:4px 12px;background:var(--orange-pale);color:var(--brown-mid)}
.course-meta-row{display:flex;gap:18px;flex-wrap:wrap}
.course-meta-item{font-size:13px;color:var(--text-muted)}
.course-meta-item strong{color:var(--text-primary);font-weight:500}
.course-footer{padding:18px 26px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.course-price{font-family:'Cormorant Garamond',serif;font-size:28px;color:var(--orange);font-weight:300}
.course-price span{font-size:12px;font-family:'Montserrat',sans-serif;color:var(--text-light);margin-left:4px}

/* ── Blog Card ── */
.blog-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);transition:all 0.25s;overflow:hidden}
.blog-card:hover{box-shadow:0 12px 48px rgba(200,83,26,0.13);transform:translateY(-4px)}
.blog-img{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--orange-pale),#EDD5B0);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;color:var(--orange-light);overflow:hidden}
.blog-body{padding:26px}
.blog-meta{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.blog-cat{font-size:9.5px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange)}
.blog-date{font-size:12px;color:var(--text-light)}
.blog-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;color:var(--text-primary);margin-bottom:12px;line-height:1.3}
.blog-excerpt{font-size:15px;line-height:1.8;color:var(--text-muted);margin-bottom:18px}
.blog-read{font-size:10.5px;font-weight:500;letter-spacing:0.24em;text-transform:uppercase;color:var(--orange);transition:letter-spacing 0.2s}
.blog-card:hover .blog-read{letter-spacing:0.32em}

/* ── Testimonial ── */
.testimonial{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);padding:32px 32px 28px;position:relative}
.testimonial::before{content:'\201C';font-family:'Cormorant Garamond',serif;font-size:72px;line-height:1;color:var(--orange);opacity:0.25;position:absolute;top:10px;left:20px}
.testimonial-text{font-family:'Cormorant Garamond',serif;font-size:19px;font-style:italic;line-height:1.8;color:var(--text-primary);margin-bottom:18px;padding-left:10px}
.testimonial-author{font-size:12px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--orange)}
.testimonial-role{font-size:12px;color:var(--text-light);margin-top:3px}

/* ── Stats ── */
.stat-item{text-align:center;padding:32px 24px}
.stat-number{font-family:'Cormorant Garamond',serif;font-size:60px;font-weight:300;color:var(--orange);line-height:1;display:block}
.stat-label{font-size:10.5px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;color:var(--text-muted);margin-top:8px;display:block}

/* ── Filter tabs ── */
.filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:40px}
.filter-btn{font-size:10px;font-weight:500;letter-spacing:0.24em;text-transform:uppercase;padding:9px 18px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:all 0.2s}
.filter-btn.active,.filter-btn:hover{background:var(--orange);color:#fff;border-color:var(--orange)}

/* ── Section heading ── */
.section-head{margin-bottom:56px}

/* ── Grid layouts ── */
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:30px}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(440px,1fr));gap:40px}
.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:26px}

/* ── Orange accent strip (top of section) ── */
.accent-top{border-top:3px solid var(--orange)}

/* ── CTA Strip ── */
.cta-strip{background:var(--nav-bg);padding:88px 0;text-align:center;position:relative;overflow:hidden}
.cta-strip::before{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(255,255,255,0.01) 3px,rgba(255,255,255,0.01) 4px)}
.cta-strip::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 65% 80% at 50% 50%,rgba(200,83,26,0.11) 0%,transparent 70%)}
.cta-strip h2{color:#FAF6EE;position:relative;z-index:1;font-size:clamp(34px,5vw,54px)}
.cta-strip p{color:rgba(250,246,238,0.58);font-size:17px;max-width:500px;margin:14px auto 32px;position:relative;z-index:1}
.cta-strip .btn{position:relative;z-index:1}

/* ── Footer ── */
.footer{background:#080400;border-top:1px solid rgba(200,83,26,0.2);padding:72px 0 32px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:56px}
.footer-brand img{display:block}
.footer-brand-name{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:300;color:#FAF6EE;margin-bottom:4px}
.footer-brand-tag{font-size:9.5px;letter-spacing:0.32em;text-transform:uppercase;color:rgba(200,83,26,0.8);margin-bottom:14px}
.footer-brand p{font-size:14px;line-height:1.8;color:rgba(250,246,238,0.45)}
.footer-col h5{font-family:'Montserrat',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.32em;text-transform:uppercase;color:rgba(200,83,26,0.8);margin-bottom:18px}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:12px}
.footer-col ul li a{font-size:14px;color:rgba(250,246,238,0.45);transition:color 0.2s}
.footer-col ul li a:hover{color:rgba(200,83,26,0.85)}
.footer-col p{font-size:14px;color:rgba(250,246,238,0.45);line-height:1.85}
.footer-bottom{border-top:1px solid rgba(200,83,26,0.12);padding-top:24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.footer-copy{font-size:12px;letter-spacing:0.1em;color:rgba(250,246,238,0.22)}
.footer-social{display:flex;gap:18px}
.footer-social a{font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(250,246,238,0.28);transition:color 0.2s}
.footer-social a:hover{color:rgba(200,83,26,0.85)}

/* ── Portfolio grid ── */
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.p-item{position:relative;overflow:hidden;background:var(--orange-pale);cursor:pointer}
.p-item.wide{grid-column:span 2}
.p-item.tall{grid-row:span 2}
.p-placeholder{width:100%;height:100%;min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center}
.p-placeholder .p-icon{font-size:36px;opacity:0.45}
.p-placeholder .p-label{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:16px;color:var(--brown-mid)}
.p-overlay{position:absolute;inset:0;background:rgba(18,8,0,0.78);opacity:0;transition:opacity 0.3s;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}
.p-item:hover .p-overlay{opacity:1}
.p-overlay h4{font-family:'Cormorant Garamond',serif;font-size:22px;color:#FAF6EE;margin-bottom:6px}
.p-overlay span{font-size:9.5px;letter-spacing:0.32em;text-transform:uppercase;color:rgba(200,83,26,0.85)}

/* ── Contact form ── */
.form-group{margin-bottom:22px}
.form-label{display:block;font-size:10px;font-weight:500;letter-spacing:0.28em;text-transform:uppercase;color:var(--text-muted);margin-bottom:9px}
.form-control{width:100%;padding:14px 18px;border:1px solid var(--border);background:var(--white);font-family:'Montserrat',sans-serif;font-size:14px;color:var(--text-primary);outline:none;transition:border-color 0.2s;border-radius:0}
.form-control:focus{border-color:var(--orange)}
.form-control::placeholder{color:rgba(42,18,6,0.26)}
textarea.form-control{resize:vertical;min-height:140px}

/* ── Timeline ── */
.timeline{position:relative;padding-left:36px}
.timeline::before{content:'';position:absolute;left:9px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,var(--orange),transparent)}
.tl-item{position:relative;margin-bottom:40px}
.tl-dot{position:absolute;left:-31px;top:5px;width:12px;height:12px;background:var(--orange);transform:rotate(45deg)}
.tl-year{font-size:10.5px;font-weight:500;letter-spacing:0.3em;color:var(--orange);text-transform:uppercase;margin-bottom:5px}
.tl-title{font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:400;margin-bottom:7px}
.tl-text{font-size:15px;line-height:1.8;color:var(--text-muted)}

/* ── Info card (contact) ── */
.info-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);padding:24px 26px;margin-bottom:18px;display:flex;gap:18px;align-items:flex-start;transition:all 0.22s}
.info-card:hover{border-color:var(--orange-light)}
.info-icon{width:48px;height:48px;flex-shrink:0;background:var(--orange-pale);display:flex;align-items:center;justify-content:center;font-size:22px}
.info-body h5{font-family:'Montserrat',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange);margin-bottom:7px}
.info-body p{font-size:15px;line-height:1.8;color:var(--text-muted)}
.info-body a{color:var(--text-primary);transition:color 0.2s}
.info-body a:hover{color:var(--orange)}

/* ── Sidebar ── */
.sidebar-widget{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);padding:28px;margin-bottom:28px}
.sidebar-widget h5{font-family:'Montserrat',sans-serif;font-size:10px;font-weight:500;letter-spacing:0.32em;text-transform:uppercase;color:var(--orange);margin-bottom:18px}
.sidebar-cat-list{list-style:none}
.sidebar-cat-list li{padding:10px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}
.sidebar-cat-list li:last-child{border-bottom:none}
.sidebar-cat-list a{font-size:14px;color:var(--text-muted);transition:color 0.2s}
.sidebar-cat-list a:hover{color:var(--orange)}
.sidebar-cat-count{font-size:11px;background:var(--orange-pale);color:var(--brown-mid);padding:3px 10px}
.recent-post{display:flex;gap:14px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.recent-post:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.recent-thumb{width:60px;height:60px;flex-shrink:0;background:linear-gradient(135deg,var(--orange-pale),#D8A060);display:flex;align-items:center;justify-content:center;font-size:20px}
.recent-info h6{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:400;line-height:1.3;margin-bottom:3px;color:var(--text-primary)}
.recent-info span{font-size:11px;color:var(--text-light)}
.tag-cloud{display:flex;flex-wrap:wrap;gap:8px}
.tag-chip{font-size:9.5px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;padding:6px 13px;border:1px solid var(--border);color:var(--text-muted);transition:all 0.2s;cursor:pointer}
.tag-chip:hover{background:var(--orange);color:#fff;border-color:var(--orange)}

/* ── Value / Team cards ── */
.value-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);padding:32px 28px;text-align:center;transition:all 0.25s}
.value-card:hover{border-color:var(--orange-light);transform:translateY(-4px)}
.value-icon{font-size:36px;margin-bottom:14px}
.value-card h4{font-size:24px;margin-bottom:10px}
.value-card p{font-size:15px}
.team-card{background:var(--white);border:1px solid var(--border);box-shadow:var(--card-shadow);overflow:hidden;text-align:center;transition:all 0.25s}
.team-card:hover{box-shadow:0 12px 48px rgba(200,83,26,0.13);transform:translateY(-4px)}
.team-img{width:100%;aspect-ratio:1;background:linear-gradient(135deg,var(--orange-pale),#EDD5B0);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:16px;color:var(--orange-light)}
.team-body{padding:22px}
.team-name{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;margin-bottom:4px}
.team-role{font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.team-bio{font-size:14px;color:var(--text-muted);line-height:1.75}

/* ── Process step ── */
.process-step{display:flex;gap:22px;align-items:flex-start;margin-bottom:32px}
.process-num{width:44px;height:44px;flex-shrink:0;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:22px}
.process-text h4{font-size:22px;margin-bottom:5px}
.process-text p{font-size:15px;color:var(--text-muted)}

/* ── Responsive ── */
@media(max-width:960px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
  .grid-2{grid-template-columns:1fr}
  .portfolio-grid{grid-template-columns:repeat(2,1fr)}
  .p-item.wide{grid-column:span 1}
}
@media(max-width:640px){
  :root{--section-gap:64px}
  .nav-links,.nav-cta{display:none!important}
  .nav-hamburger{display:flex!important}
  .footer-grid{grid-template-columns:1fr}
  .portfolio-grid{grid-template-columns:repeat(2,1fr)}
  .p-item.tall{grid-row:span 1}
  .footer-bottom{flex-direction:column;text-align:center}
  .grid-4{grid-template-columns:1fr 1fr}
}

/* ── Footer inner layout (used in updated pages) ── */
.footer-inner{
  max-width:1200px;margin:0 auto;padding:0 40px 40px;
  display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;
}
.footer-brand p{font-size:14px;color:rgba(250,246,238,0.5);line-height:1.8;margin:0}
.footer-links h4,.footer-contact h4{
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(200,83,26,.8);margin-bottom:16px;font-family:'Montserrat',sans-serif;
}
.footer-links a{display:block;font-size:14px;color:rgba(250,246,238,.45);text-decoration:none;margin-bottom:10px;transition:color .2s}
.footer-links a:hover{color:rgba(200,83,26,.85)}
.footer-contact p{font-size:14px;color:rgba(250,246,238,.45);line-height:1.85;margin:0 0 6px}
.footer-copy{
  max-width:1200px;margin:0 auto;padding:20px 40px 0;
  border-top:1px solid rgba(200,83,26,.12);
  font-size:12px;letter-spacing:.1em;
  color:rgba(250,246,238,.22);
}
@media(max-width:768px){
  .footer-inner{grid-template-columns:1fr;gap:32px}
}

/* ── CTA strip button ── */
.btn-cta{
  display:inline-block;
  background:var(--orange);color:#fff;
  padding:14px 40px;border-radius:8px;
  font-family:'Montserrat',sans-serif;
  font-size:.95em;font-weight:700;letter-spacing:.06em;
  text-decoration:none;text-transform:uppercase;
  transition:background .25s,transform .2s;
  position:relative;z-index:1;
}
.btn-cta:hover{background:var(--orange-light,#E07040);transform:translateY(-2px)}

/* ── Footer inner layout (updated pages) ── */
.footer-inner{
  max-width:1200px;margin:0 auto;padding:0 40px 40px;
  display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;
}
.footer-links h4,.footer-contact h4{
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(200,83,26,.8);margin-bottom:16px;
  font-family:'Montserrat',sans-serif;font-weight:600;
}
.footer-links a{
  display:block;font-size:14px;color:rgba(250,246,238,.45);
  text-decoration:none;margin-bottom:10px;transitio
/* ── Footer rectangular logo ── */
.footer-logo-img{
  height:64px !important;
  width:auto !important;
  max-width:240px !important;
  border-radius:0 !important;
  object-fit:contain;
  display:block;
  margin-bottom:18px;
  background:transparent;
  padding:0;
  box-shadow:none;
}
                                                                                                                                                                                                                                                                                                                                                                                             