/*
Theme Name: Couto Silva Advogados
Theme URI: 
Author: Lanna Ribeiro · Gestão & Assessoria
Author URI: 
Description: Tema institucional do escritório Couto Silva Advogados. Conversão fiel da página HTML original.
Version: 1.0
Requires at least: 5.0
Tested up to: 6.5
Requires PHP: 7.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: couto-silva
*/

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --orange:#D4611A;--orange-light:#E8845A;--orange-pale:#FAF0E8;
  --gray:#8C7B75;--gray-dark:#6B5C57;
  --taupe:#9E8E82;--taupe-dark:#7A6B65;--taupe-bg:#F5F0EC;
  --ink:#1A1614;--ink-mid:#2E2724;--ink-soft:#4A3F3C;
  --white:#FDFCFB;--stone:#F2EDE8;--stone-mid:#DDD5CF;
  --font:'Raleway','Helvetica Neue',Helvetica,Arial,sans-serif;
}
html{scroll-behavior:smooth;}
body{background:var(--white);color:var(--ink);font-family:var(--font);font-weight:300;line-height:1.7;overflow-x:hidden;}

/* LANG */
#lang-toggle{position:fixed;top:1.5rem;right:2rem;z-index:1000;display:flex;border:1px solid var(--orange);}
#lang-toggle button{background:transparent;border:none;padding:.28rem .7rem;font-family:var(--font);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;color:var(--ink-soft);transition:all .2s;}
#lang-toggle button.active{background:var(--orange);color:#fff;}
#lang-toggle button:hover:not(.active){background:var(--orange-pale);}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:900;display:flex;align-items:center;justify-content:space-between;padding:1.4rem 8rem 1.4rem 3rem;background:rgba(253,252,251,.96);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .3s;}
nav.scrolled{border-bottom-color:var(--stone-mid);}
.nav-logo img{height:30px;display:block;}
.nav-links{display:flex;gap:1.4rem;list-style:none;}
.nav-links a{font-size:9.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;transition:color .2s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--orange);transition:width .3s;}
.nav-links a:hover{color:var(--orange);}
.nav-links a:hover::after{width:100%;}

/* HERO */
#hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;}
.hero-left{background:var(--taupe);display:flex;flex-direction:column;justify-content:flex-end;padding:7rem 4.5rem 5rem;position:relative;overflow:hidden;}
.hero-left::before{content:'';position:absolute;inset:0;background:url('images/img-07-d3fbd5e934.jpg') center/cover;opacity:.18;mix-blend-mode:luminosity;}
.hero-left-content{position:relative;z-index:1;}
.hero-eyebrow{font-size:9.5px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,252,251,.85);margin-bottom:1.8rem;display:flex;align-items:center;gap:1rem;}
.hero-eyebrow::before{content:'';display:block;width:2rem;height:1px;background:var(--orange);}
.hero-headline{font-size:clamp(2.6rem,4.5vw,3.8rem);font-weight:200;line-height:1.12;color:var(--white);margin-bottom:2rem;letter-spacing:-.01em;}
.hero-headline em{font-style:italic;font-weight:300;color:rgba(253,252,251,.82);}
.hero-sub{font-size:13px;font-weight:300;color:rgba(253,252,251,.8);line-height:1.9;max-width:27rem;letter-spacing:.03em;}
.hero-cta{margin-top:3rem;display:flex;gap:1.5rem;align-items:center;}
.hero-social{margin-top:2.5rem;padding-top:1.5rem;display:flex;gap:1rem;border-top:1px solid rgba(253,252,251,.22);max-width:8rem;}
.hero-social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(253,252,251,.42);color:rgba(253,252,251,.78);text-decoration:none;transition:all .25s ease;}
.hero-social-link:hover{border-color:var(--orange-light);color:var(--orange-light);transform:translateY(-2px);}
.btn-primary{display:inline-block;padding:.85rem 2.2rem;background:var(--orange);color:#fff;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;transition:background .25s;cursor:pointer;border:none;font-family:var(--font);}
.btn-primary:hover{background:var(--orange-light);}
.btn-ghost{font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(253,252,251,.78);text-decoration:none;transition:color .2s;display:flex;align-items:center;gap:.5rem;}
.btn-ghost:hover{color:rgba(253,252,251,.85);}
.hero-right{background:var(--white);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:5rem 4rem;position:relative;overflow:hidden;}
.hero-right-photo{position:absolute;inset:0;background:url('images/img-05-ff9003eb18.jpg') center/cover;opacity:.07;}
.hero-right-inner{display:flex;flex-direction:column;align-items:center;gap:3rem;position:relative;z-index:1;}
.hero-right img.hero-logo{width:210px;display:block;}
.hero-offices-wrap{text-align:center;width:100%;}
.hero-offices-label{font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);margin-bottom:1.8rem;}
.hero-offices-grid{display:flex;flex-direction:column;align-items:center;gap:1.7rem;}.hero-offices-row{display:flex;justify-content:center;align-items:stretch;gap:2.4rem;}
.hero-office-city{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:.35rem;white-space:nowrap;}
.hero-office-addr{font-size:11.5px;font-weight:300;color:var(--gray);line-height:1.7;white-space:nowrap;}
.hero-offices-reach{margin-top:1.7rem;font-size:11.5px;font-weight:300;font-style:italic;color:var(--gray);letter-spacing:.02em;}
.hero-divider-v{width:1px;background:var(--stone-mid);align-self:stretch;}

/* COMMONS */
section{padding:6rem 0;}
.container{max-width:1160px;margin:0 auto;padding:0 3rem;}
.section-label{font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--orange);margin-bottom:1.1rem;display:flex;align-items:center;gap:1rem;}
.section-label::before{content:'';display:block;width:1.5rem;height:1px;background:var(--orange);}
.section-label.light{color:rgba(253,252,251,.5);}
h2.section-title{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:200;line-height:1.2;color:var(--ink);margin-bottom:1.5rem;letter-spacing:-.01em;}
h2.section-title em{font-style:italic;color:var(--orange);font-weight:300;}
h2.section-title.light{color:var(--white);}
h2.section-title.light em{color:var(--orange-light);}

/* SOBRE */
#about{background:var(--white);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.about-text p{font-size:14.5px;color:var(--ink-soft);margin-bottom:1.2rem;line-height:1.9;}
.about-text p.lead{font-size:1.15rem;font-weight:300;color:var(--ink-mid);line-height:1.65;}
.about-rule{width:2.5rem;height:1px;background:var(--orange);margin:1.8rem 0;}
.about-highlight{background:var(--stone);padding:1.5rem 2rem;margin-top:1.5rem;border-left:2px solid var(--orange);}
.about-highlight p{font-size:1rem;font-style:italic;font-weight:300;color:var(--ink-mid);margin:0;line-height:1.7;}
.about-image-wrap{position:relative;}
.about-image-wrap img{width:100%;height:500px;object-fit:cover;object-position:center;display:block;filter:saturate(.9);}
.about-image-accent{position:absolute;bottom:-1.5rem;right:-1.5rem;width:55%;height:55%;border:1px solid var(--orange-light);pointer-events:none;z-index:-1;}

/* FILOSOFIA */
#simplicity{background:var(--ink);position:relative;overflow:hidden;}
#simplicity::before{content:'"';position:absolute;top:-2rem;left:2rem;font-size:20rem;font-weight:200;color:rgba(255,255,255,.025);line-height:1;font-family:Georgia,serif;pointer-events:none;}
.simplicity-inner{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center;}
.simplicity-tagline{font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:200;color:rgba(253,252,251,.85);line-height:1.4;margin-bottom:2rem;font-style:italic;}
.simplicity-inner .fade-up.d2 p{font-size:14px;font-weight:300;color:rgba(253,252,251,.75);line-height:1.9;margin-bottom:1.25rem;}
.simplicity-inner .fade-up.d2 p strong{font-weight:500;color:var(--white);}
.values-row{display:flex;gap:2rem;margin-top:2.5rem;flex-wrap:wrap;}
.value-item{display:flex;align-items:flex-start;gap:.6rem;}
.value-dot{width:4px;height:4px;border-radius:50%;background:var(--orange);margin-top:.55rem;flex-shrink:0;}
.value-text{font-size:11.5px;font-weight:400;color:rgba(253,252,251,.45);letter-spacing:.04em;}

/* PRÊMIOS */
#awards{background:var(--stone);}
.awards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;}
.award-card{background:var(--white);padding:2rem;border-bottom:2px solid var(--orange);}
.award-source{font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:.75rem;}
.award-title{font-size:1rem;font-weight:400;color:var(--ink);margin-bottom:.5rem;line-height:1.3;}
.award-years{font-size:11.5px;font-weight:300;color:var(--gray);}

/* PRÁTICA */
#practice{background:var(--taupe-dark);}
.practice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.08);margin-top:3.5rem;}
.practice-grid .practice-card:nth-child(5){grid-column:span 1;}
.practice-grid .practice-card:nth-child(6){grid-column:span 1;}
.practice-card{background:var(--taupe-dark);padding:3rem 2.5rem;position:relative;transition:background .3s;}
.practice-card:hover{background:var(--gray-dark);}
.practice-num{font-size:3rem;font-weight:200;color:rgba(255,255,255,.05);position:absolute;top:1.5rem;right:2rem;line-height:1;}
.practice-bar{width:2rem;height:2px;background:var(--orange);margin-bottom:2rem;}
.practice-title{font-size:1.3rem;font-weight:300;color:var(--white);margin-bottom:1rem;line-height:1.3;}
.practice-desc{font-size:12.5px;font-weight:300;color:rgba(253,252,251,.88);line-height:1.85;}
.practice-items{margin-top:1.75rem;list-style:none;}
.practice-items li{font-size:11.5px;font-weight:300;color:rgba(253,252,251,.75);padding:.4rem 0;border-top:1px solid rgba(255,255,255,.06);letter-spacing:.03em;}
.practice-items li::before{content:'—';color:var(--orange);margin-right:.6rem;font-size:.75em;}

/* SETORES */
#sectors{background:var(--stone);}
.sectors-intro p{font-size:14.5px;color:var(--ink-soft);line-height:1.9;}
.sectors-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2.5rem;}
.sector-pill{padding:.4rem 1.1rem;border:1px solid var(--stone-mid);font-size:11px;font-weight:400;letter-spacing:.06em;color:var(--ink-soft);background:var(--white);transition:all .2s;cursor:default;}
.sector-pill:hover{border-color:var(--orange);color:var(--orange);background:var(--orange-pale);}

/* TRANSAÇÕES */
#transactions{background:var(--white);}
.tx-intro p{font-size:14.5px;color:var(--ink-soft);line-height:1.9;margin-bottom:1rem;}
.tx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--stone-mid);margin-top:3rem;}
.tx-card{background:var(--white);padding:2rem 1.75rem;}
.tx-client{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:.5rem;}
.tx-desc{font-size:13px;font-weight:300;color:var(--ink-soft);line-height:1.6;margin-bottom:.5rem;}
.tx-value{font-size:11px;font-weight:500;color:var(--ink-mid);letter-spacing:.05em;}

/* PROFISSIONAL */
#team{background:#E2DDD8;}
.team-info{padding-top:.5rem;}
.team-name{font-size:clamp(1.7rem,2.8vw,2.2rem);font-weight:200;color:var(--ink);margin-bottom:.3rem;line-height:1.2;letter-spacing:-.01em;}
.team-role{font-size:10px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin-bottom:1.5rem;}
.team-bio{font-size:14px;color:var(--ink-soft);line-height:1.9;margin-bottom:1.2rem;}

/* JUSTIFICAÇÃO DE TEXTOS CORRIDOS */
.about-text p,
.simplicity-inner .fade-up.d2 p,
.team-bio,
.practice-desc,
.approach-text,
.sectors-intro p,
.tx-intro{
  text-align:justify;
  hyphens:auto;
  -webkit-hyphens:auto;
  -ms-hyphens:auto;
  text-justify:inter-word;
}
.credentials{margin-top:2rem;display:flex;flex-direction:column;gap:.7rem;}
.cred{display:flex;gap:1rem;align-items:flex-start;padding-bottom:.7rem;border-bottom:1px solid var(--stone-mid);}
.cred-dot{width:4px;height:4px;border-radius:50%;background:var(--orange);margin-top:.6rem;flex-shrink:0;}
.cred-text{font-size:12px;font-weight:300;color:var(--ink-soft);line-height:1.55;}
.team-langs{margin-top:2rem;display:flex;gap:.75rem;align-items:center;}
.team-langs-lbl{font-size:9px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);}
.lang-badge{padding:.18rem .65rem;border:1px solid var(--stone-mid);font-size:10px;font-weight:400;letter-spacing:.1em;color:var(--ink-soft);}

/* TEAM GRID & CARD */
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,280px);gap:2.5rem;margin-top:2.5rem;justify-content:center;}
.team-card{cursor:pointer;display:flex;flex-direction:column;background:transparent;outline:none;transition:transform .35s ease;}
.team-card:hover{transform:translateY(-4px);}
.team-card:focus-visible{outline:1px solid var(--orange);outline-offset:6px;}
.team-card-photo-wrap{position:relative;overflow:hidden;}
.team-card-photo-wrap img{width:100%;height:340px;object-fit:cover;object-position:center center;display:block;filter:saturate(.9);transition:filter .4s ease,transform .6s ease;}
.team-card:hover .team-card-photo-wrap img{filter:saturate(1);transform:scale(1.03);}
.team-card-photo-accent{position:absolute;bottom:-1rem;right:-1rem;width:40%;height:40%;border:1px solid var(--orange-light);pointer-events:none;z-index:-1;}
.team-card-info{padding:1.2rem .1rem 0;}
.team-card-name{font-size:1.25rem;font-weight:300;color:var(--ink);margin-bottom:.25rem;line-height:1.3;letter-spacing:-.005em;}
.team-card-role{font-size:9.5px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--orange);margin:0;}

/* TEAM MODAL */
.team-modal{display:none;position:fixed;inset:0;z-index:200;align-items:flex-start;justify-content:center;padding:3rem 1.5rem;overflow-y:auto;}
.team-modal.is-open{display:flex;}
.team-modal-overlay{position:fixed;inset:0;background:rgba(26,22,20,.78);backdrop-filter:blur(4px);cursor:pointer;}
.team-modal-content{position:relative;background:var(--white);max-width:980px;width:100%;padding:3.5rem 3rem 3rem;box-shadow:0 30px 80px rgba(0,0,0,.25);animation:modalIn .35s cubic-bezier(.2,.8,.2,1);}
@keyframes modalIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
.team-modal-close{position:absolute;top:1rem;right:1.2rem;background:transparent;border:none;font-size:2rem;line-height:1;color:var(--ink-soft);cursor:pointer;padding:.25rem .5rem;transition:color .2s;font-weight:200;}
.team-modal-close:hover{color:var(--orange);}
.team-modal-body{display:grid;grid-template-columns:300px 1fr;gap:3.5rem;align-items:start;}
.team-modal-photo-wrap{position:relative;}
.team-modal-photo-wrap img{width:100%;height:380px;object-fit:cover;object-position:center center;display:block;filter:saturate(.9);}
.team-modal-info{padding-top:.25rem;}

/* APPROACH */
#approach{background:var(--white);}
.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;margin-top:3.5rem;}
.approach-num{font-size:2.2rem;font-weight:200;color:var(--orange);opacity:.4;line-height:1;margin-bottom:1rem;}
.approach-title{font-size:1.05rem;font-weight:400;color:var(--ink);margin-bottom:.7rem;line-height:1.3;}
.approach-text{font-size:12.5px;font-weight:300;color:var(--ink-soft);line-height:1.85;}

/* FOTOS DO ESCRITÓRIO */
#office-photos{background:var(--ink);padding:0;}
.office-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;height:380px;}
.office-gallery .photo-panel{overflow:hidden;position:relative;}
.office-gallery .photo-panel img{width:100%;height:100%;object-fit:cover;opacity:.75;transition:opacity .4s,transform .5s;}
.office-gallery .photo-panel:hover img{opacity:.95;transform:scale(1.04);}

/* CONTATO */
#contact{background:var(--taupe-dark);}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;margin-top:4rem;align-items:stretch;}
.contact-grid > .fade-up.d1{display:flex;flex-direction:column;}
.contact-grid > .fade-up.d2{display:flex;flex-direction:column;}
.contact-city{font-size:1.1rem;font-weight:300;color:var(--white);margin-bottom:.4rem;letter-spacing:.04em;}
.contact-addr{font-size:12px;font-weight:300;color:rgba(253,252,251,.4);line-height:1.9;}
.contact-sep{width:1.5rem;height:1px;background:rgba(255,255,255,.12);margin:1.75rem 0;}
.contact-social{margin-top:auto;padding-top:2rem;display:flex;gap:1.25rem;flex-wrap:wrap;}
.contact-social-link{display:inline-flex;align-items:center;gap:.55rem;padding:.6rem 1.1rem;border:1px solid rgba(255,255,255,.18);color:rgba(253,252,251,.65);text-decoration:none;font-size:10.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:all .25s ease;background:transparent;}
.contact-social-link:hover{border-color:var(--orange-light);color:var(--orange-light);transform:translateY(-2px);}
.contact-social-link svg{flex-shrink:0;}
.form-submit{margin-top:auto;padding-top:2rem;display:flex;gap:1.5rem;align-items:center;}
.form-field{margin-bottom:1.25rem;}
.form-field label{display:block;font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:rgba(253,252,251,.4);margin-bottom:.5rem;}
.form-field input,.form-field textarea,.form-field select{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.15);padding:.6rem 0;color:var(--white);font-family:var(--font);font-size:13.5px;font-weight:300;outline:none;transition:border-color .2s;-webkit-appearance:none;}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-bottom-color:var(--orange-light);}
.form-field textarea{resize:none;height:72px;}
.form-field select{background:transparent;color:rgba(253,252,251,.55);cursor:pointer;}
.form-field select option{background:var(--taupe-dark);color:var(--white);}
.form-note{font-size:10px;font-weight:300;color:rgba(253,252,251,.28);letter-spacing:.06em;}
.contact-email{display:flex;flex-direction:column;gap:.55rem;}
.contact-email-label{font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:rgba(253,252,251,.55);}
.contact-email-link{font-size:1.05rem;font-weight:300;color:var(--white);text-decoration:none;letter-spacing:.02em;align-self:flex-start;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:.18rem;transition:color .25s,border-color .25s;}
.contact-email-link:hover{color:var(--orange-light);border-bottom-color:var(--orange-light);}
.form-success{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.6rem 0;border-top:1px solid rgba(255,255,255,.12);margin-top:auto;}
#contact-form.is-sent{justify-content:center;align-items:center;min-height:100%;}
#contact-form.is-sent .form-success{align-items:center;text-align:center;border-top:none;margin-top:0;padding:2rem 1rem;max-width:24rem;}
#contact-form.is-sent .form-success-text{max-width:none;}
.form-success[hidden],.form-error[hidden]{display:none !important;}
.form-error{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;padding:1.1rem 1.2rem;margin-top:1rem;background:rgba(212,97,26,.08);border-left:2px solid var(--orange);}
.form-error-title{font-size:11px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--orange-light);margin:0;}
.form-error-text{font-size:13px;font-weight:300;color:rgba(253,252,251,.78);line-height:1.7;margin:0;}
.form-error-text a{color:var(--white);text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px;}
.form-error-text a:hover{text-decoration-color:var(--orange-light);color:var(--orange-light);}
.form-success-icon{color:var(--orange-light);margin-bottom:.2rem;}
.form-success-title{font-size:1.25rem;font-weight:300;color:var(--white);letter-spacing:.01em;margin:0;}
.form-success-text{font-size:13.5px;font-weight:300;color:rgba(253,252,251,.7);line-height:1.7;margin:0;max-width:28rem;}
#contact-submit:disabled{opacity:.55;cursor:default;}
.contact-simple{max-width:46rem;margin:4rem auto 0;display:flex;flex-direction:column;gap:2.8rem;}
.contact-feature{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem;}
.contact-feature-label{font-size:9px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,252,251,.55);}
.contact-feature-email{font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:200;color:var(--white);text-decoration:none;letter-spacing:-.005em;border-bottom:1px solid rgba(255,255,255,.22);padding-bottom:.45rem;transition:color .25s,border-color .25s;}
.contact-feature-email:hover{color:var(--orange-light);border-bottom-color:var(--orange-light);}
.contact-feature-note{font-size:10.5px;font-weight:300;color:rgba(253,252,251,.42);letter-spacing:.06em;margin-top:.4rem;}
.contact-rule{width:2.5rem;height:1px;background:rgba(255,255,255,.18);margin:0 auto;}
.contact-offices-simple{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem;align-items:start;text-align:center;}
.contact-office .contact-city{font-size:1rem;font-weight:300;letter-spacing:.04em;color:var(--white);margin-bottom:.55rem;}
.contact-office .contact-addr{font-size:12px;font-weight:300;color:rgba(253,252,251,.5);line-height:1.85;}
.contact-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap;}
.contact-confidential{display:flex;flex-direction:column;gap:.5rem;max-width:24rem;flex:1 1 18rem;}
.contact-conf-label{font-size:9px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:rgba(253,252,251,.45);}
.contact-conf-text{font-size:12px;font-weight:300;color:rgba(253,252,251,.6);line-height:1.75;}
.contact-social-row{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap;}
@media (max-width:720px){.contact-offices-simple{grid-template-columns:1fr;gap:2rem;}.contact-meta{flex-direction:column;align-items:center;text-align:center;}.contact-confidential{align-items:center;text-align:center;}.contact-simple{margin-top:2.5rem;gap:2.2rem;}}

/* FOOTER */
footer{background:var(--ink-mid);padding:2rem 3rem;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.06);}
footer img{height:22px;opacity:.4;}
.footer-copy{font-size:10px;font-weight:300;color:rgba(253,252,251,.22);letter-spacing:.08em;}
.footer-tagline{font-size:11px;font-weight:300;color:rgba(253,252,251,.4);letter-spacing:.04em;font-style:italic;}

/* ANIMATE */
.fade-up{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease;}
.fade-up.visible{opacity:1;transform:none;}
.fade-up.d1{transition-delay:.1s;}
.fade-up.d2{transition-delay:.2s;}
.fade-up.d3{transition-delay:.3s;}
.fade-up.d4{transition-delay:.4s;}

/* RESPONSIVE */
@media(max-width:900px){
  #hero{grid-template-columns:1fr;}
  .hero-right{display:none;}
  nav{padding:1.2rem 5.5rem 1.2rem 1.5rem;}
  .nav-links{display:none;}
  .container{padding:0 1.5rem;}
  .about-grid,.contact-grid,.simplicity-inner{grid-template-columns:1fr;gap:3rem;}
  .practice-grid{grid-template-columns:1fr;}
  .practice-grid .practice-card:nth-child(6){grid-column:1;}
  .approach-grid,.awards-grid{grid-template-columns:1fr 1fr;}
  .tx-grid{grid-template-columns:1fr 1fr;}
  .office-gallery{grid-template-columns:1fr;height:auto;}
  .office-gallery .photo-panel{height:220px;}
  footer{flex-direction:column;gap:1rem;text-align:center;}
  .about-image-accent{display:none;}
  .team-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2rem;}
  .team-card-photo-wrap img{height:300px;}
  .team-modal{padding:1.5rem .8rem;}
  .team-modal-content{padding:2.5rem 1.5rem 2rem;}
  .team-modal-body{grid-template-columns:1fr;gap:2rem;}
  .team-modal-photo-wrap img{height:320px;}
  .contact-grid > .fade-up.d1, .contact-grid > .fade-up.d2{display:block;}
  .contact-offices-simple{grid-template-columns:1fr;gap:2rem;}
  .contact-social{padding-top:2rem;gap:.8rem;}
  .form-submit{padding-top:2rem;}
  #lang-toggle{top:1rem;right:1rem;}
  .hero-left{padding:5rem 1.5rem 4rem;}
}
