/* assets/css/tailwind.min.css */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-5{bottom:1.25rem}.right-5{right:1.25rem}.top-0{top:0}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mt-1{margin-top:.25rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-20{height:5rem}.h-4{height:1rem}.min-h-\[680px\]{min-height:680px}.min-h-\[760px\]{min-height:760px}.w-14{width:3.5rem}.w-4{width:1rem}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-7xl{max-width:80rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-7{gap:1.75rem}.gap-8{gap:2rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-y-2{row-gap:.5rem}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.scroll-smooth{scroll-behavior:smooth}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-gold\/60{border-color:rgba(198,154,75,.6)}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/5{border-color:hsla(0,0%,100%,.05)}.bg-\[\#04090b\]{--tw-bg-opacity:1;background-color:rgb(4 9 11/var(--tw-bg-opacity,1))}.bg-\[\#25D366\]{--tw-bg-opacity:1;background-color:rgb(37 211 102/var(--tw-bg-opacity,1))}.bg-cream{--tw-bg-opacity:1;background-color:rgb(244 239 230/var(--tw-bg-opacity,1))}.bg-ink{--tw-bg-opacity:1;background-color:rgb(7 16 20/var(--tw-bg-opacity,1))}.bg-ink\/70{background-color:rgba(7,16,20,.7)}.bg-white\/\[\.06\]{background-color:hsla(0,0%,100%,.06)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-2{padding:.5rem}.p-6{padding:1.5rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.pt-20{padding-top:5rem}.font-serif{font-family:Cormorant Garamond,serif}.text-5xl{font-size:3rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-normal{font-weight:400}.font-semibold{font-weight:600}.leading-5{line-height:1.25rem}.leading-7{line-height:1.75rem}.leading-\[\.92\]{line-height:.92}.leading-none{line-height:1}.text-\[\#9b6b23\]{--tw-text-opacity:1;color:rgb(155 107 35/var(--tw-text-opacity,1))}.text-gold{--tw-text-opacity:1;color:rgb(198 154 75/var(--tw-text-opacity,1))}.text-gold2{--tw-text-opacity:1;color:rgb(228 193 116/var(--tw-text-opacity,1))}.text-slate-900{--tw-text-opacity:1;color:rgb(15 23 42/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/60{color:hsla(0,0%,100%,.6)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/80{color:hsla(0,0%,100%,.8)}.text-white\/85{color:hsla(0,0%,100%,.85)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.selection\:bg-gold ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(198 154 75/var(--tw-bg-opacity,1))}.selection\:bg-gold ::selection{--tw-bg-opacity:1;background-color:rgb(198 154 75/var(--tw-bg-opacity,1))}.selection\:text-black ::-moz-selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:text-black ::selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:bg-gold::-moz-selection{--tw-bg-opacity:1;background-color:rgb(198 154 75/var(--tw-bg-opacity,1))}.selection\:bg-gold::selection{--tw-bg-opacity:1;background-color:rgb(198 154 75/var(--tw-bg-opacity,1))}.selection\:text-black::-moz-selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.selection\:text-black::selection{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.hover\:scale-110:hover{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:bg-gold:hover{--tw-bg-opacity:1;background-color:rgb(198 154 75/var(--tw-bg-opacity,1))}.hover\:text-black:hover{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:p-8{padding:2rem}.sm\:text-6xl{font-size:3.75rem;line-height:1}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-\[\.65fr_1\.35fr\]{grid-template-columns:.65fr 1.35fr}.lg\:grid-cols-\[\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[1\.05fr_\.95fr\]{grid-template-columns:1.05fr .95fr}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-7xl{font-size:4.5rem;line-height:1}}
/* assets/css/fonts.css */
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter-latin-400.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/inter-latin-500.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/inter-latin-600.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter-latin-700.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-500.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-500-italic.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-600.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/cormorant-garamond-latin-700.woff2") format("woff2");
}
/* assets/css/app.css */
:root{--gold:#c69a4b;--ink:#071014;--cream:#f7f3ec}html{scroll-padding-top:80px}body{overflow-x:hidden}.hero-grid{background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:64px 64px}.eyebrow{font-size:.72rem;line-height:1rem;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#d8b66f}.section{padding:6rem 0}.section-title{margin-top:1rem;font-family:'Cormorant Garamond',serif;font-size:clamp(2.5rem,5vw,4.2rem);line-height:.95;font-weight:600}.navlink{position:relative;transition:.25s}.navlink:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--gold);transition:.25s}.navlink:hover{color:#fff}.navlink:hover:after{right:0}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:.65rem;border-radius:.8rem;padding:.95rem 1.25rem;font-size:.9rem;font-weight:700;transition:.25s}.btn-primary{background:linear-gradient(135deg,#e5c16f,#b8832f);color:#101010;box-shadow:0 12px 35px rgba(198,154,75,.2)}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.06)}.btn-secondary{border:1px solid rgba(228,193,116,.6);color:#fff}.btn-secondary:hover{background:rgba(198,154,75,.12)}.btn-primary svg,.btn-secondary svg{width:18px;height:18px}.trust{display:flex;gap:.65rem;align-items:center;font-size:.7rem;line-height:1.25;color:rgba(255,255,255,.72)}.trust svg{width:22px;color:#d8b66f}.practice-card{border:1px solid rgba(72,52,24,.12);border-radius:1rem;background:#fff;padding:2rem;box-shadow:0 16px 50px rgba(40,28,13,.04);transition:.3s}.practice-card:hover{transform:translateY(-6px);box-shadow:0 20px 60px rgba(40,28,13,.09);border-color:rgba(198,154,75,.45)}.practice-card h3{margin-top:1.2rem;font-family:'Cormorant Garamond',serif;font-size:2rem;font-weight:600}.practice-card p{margin-top:.6rem;color:#64748b;line-height:1.7;font-size:.9rem}.practice-card ul{margin-top:1rem;display:grid;gap:.55rem;color:#475569;font-size:.88rem}.practice-card li:before{content:"•";color:#b8832f;margin-right:.55rem}.practice-card a{margin-top:1.5rem;display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:#9b6b23}.practice-card a svg{width:16px}.practice-icon{height:36px;width:36px;color:#b8832f}.mini-feature{display:flex;align-items:center;gap:.65rem;color:rgba(255,255,255,.72);font-size:.75rem}.mini-feature svg{width:22px;color:#d8b66f}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem;position:relative}.process-grid:before{content:"";position:absolute;left:5%;right:5%;top:26px;height:1px;background:linear-gradient(90deg,transparent,#c69a4b,transparent)}.process{position:relative;padding-top:0}.process>span{font-size:.68rem;font-weight:700;color:#7c5a22}.process>svg{position:relative;z-index:1;margin:10px 0 18px;width:54px;height:54px;padding:15px;border-radius:999px;background:#8d672d;color:#fff;box-shadow:0 0 0 6px #f7f3ec}.process h3{font-weight:700}.process p{margin-top:.45rem;font-size:.78rem;line-height:1.55;color:#64748b}.faq{border:1px solid rgba(15,23,42,.1);border-radius:.75rem;background:#fff;padding:0 1.1rem}.faq summary{display:flex;cursor:pointer;list-style:none;align-items:center;justify-content:space-between;padding:1rem 0;font-size:.9rem;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary svg{width:16px;transition:.25s}.faq[open] summary svg{transform:rotate(45deg)}.faq p{padding:0 0 1rem;color:#64748b;font-size:.88rem;line-height:1.7}.contact-glow{background:radial-gradient(circle at 75% 35%,rgba(198,154,75,.14),transparent 35%)}.contact-link{display:flex;max-width:480px;align-items:center;gap:1rem;border:1px solid rgba(198,154,75,.35);border-radius:1rem;padding:1rem 1.1rem;transition:.25s}.contact-link:hover{border-color:#c69a4b;background:rgba(198,154,75,.08)}.contact-link svg{color:#d8b66f}.contact-link span{display:grid;font-weight:600}.contact-link small{font-weight:500;color:rgba(255,255,255,.45);font-size:.66rem;text-transform:uppercase;letter-spacing:.12em}form label{font-size:.75rem;font-weight:600;color:rgba(255,255,255,.72)}form input,form select,form textarea{margin-top:.45rem;width:100%;border:1px solid rgba(255,255,255,.12);border-radius:.75rem;background:rgba(2,7,9,.72);padding:.9rem 1rem;color:#fff;outline:none;transition:.2s}form input:focus,form select:focus,form textarea:focus{border-color:#c69a4b;box-shadow:0 0 0 3px rgba(198,154,75,.12)}form select option{background:#071014}.status-ok{display:block!important;background:rgba(34,197,94,.12);color:#bbf7d0}.status-error{display:block!important;background:rgba(239,68,68,.12);color:#fecaca}@media(max-width:900px){.section{padding:4.5rem 0}.process-grid{grid-template-columns:1fr 1fr}.process-grid:before{display:none}}@media(max-width:640px){.process-grid{grid-template-columns:1fr}.process{display:grid;grid-template-columns:60px 1fr;column-gap:1rem}.process>span{grid-column:1}.process>svg{grid-column:1;grid-row:2/4}.process h3,.process p{grid-column:2}.hero{min-height:auto}.hero h1{font-size:3.25rem}}
/* Editorial details and restrained section transitions. */
html { scroll-behavior: smooth; }
html.is-navigating { scroll-behavior: auto !important; }
#header { transition: background-color .3s, box-shadow .3s, border-color .3s; }
#header.is-scrolled { background-color: rgba(7,16,20,.96); border-color: rgba(198,154,75,.22); box-shadow: 0 8px 32px #0002; }
.navlink[aria-current="location"] { color: #e4c174; }
.navlink[aria-current="location"]:after { right: 0; }
#mobileNav a[aria-current="location"] { color: #e4c174; }
main > section { position: relative; isolation: isolate; }
main > section:not(:first-child)::before { content: ""; position: absolute; z-index: 2; top: 0; left: 0; right: 0; height: 1px; pointer-events: none; background: linear-gradient(90deg,transparent,rgba(198,154,75,.55),transparent); }
.hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 64px; pointer-events: none; background: linear-gradient(transparent,rgba(198,154,75,.09)); }
#areas, #como-atuamos, #duvidas { background-image: linear-gradient(180deg,rgba(198,154,75,.09),transparent 110px,transparent calc(100% - 110px),rgba(198,154,75,.045)); }
#sobre, #contato { background-image: radial-gradient(ellipse at top left,rgba(198,154,75,.07),transparent 55%); }
.eyebrow { display: flex; align-items: center; gap: .8rem; }
.eyebrow::before { content: ""; width: 1.8rem; height: 1px; background: currentColor; opacity: .65; flex-shrink: 0; }
svg { flex-shrink: 0; }
.whatsapp-icon { display: inline-block; width: 1.2rem; height: 1.2rem; fill: currentColor; vertical-align: middle; }
.practice-card { display: flex; flex-direction: column; position: relative; }
.practice-card .practice-icon { box-sizing: content-box; width: 28px; height: 28px; padding: 15px; border: 1px solid rgba(198,154,75,.2); border-radius: 16px; background: linear-gradient(135deg,#faf5ea,#f2e8d5); color: #906423; }
.practice-card a { margin-top: auto; padding-top: 1.5rem; }
.practice-card a svg, .btn-primary svg:last-child { transition: transform .25s; }
.practice-card:hover a svg, .btn-primary:hover svg:last-child:not(.whatsapp-icon) { transform: translateX(3px); }
.practice-card:focus-within { border-color: var(--gold); box-shadow: 0 20px 60px rgba(40,28,13,.09); }
.trust svg, .mini-feature svg { height: 24px; width: 24px; }
.faq { transition: border-color .25s, box-shadow .25s; }
.faq[open] { border-color: rgba(198,154,75,.5); box-shadow: 0 8px 24px #281c0d06; }
.faq[open] p { animation: answer-in .3s ease-out; }
@keyframes answer-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
.contact-link span { min-width: 0; overflow-wrap: anywhere; }
.contact-link > svg { width: 24px; height: 24px; }
form input[type="checkbox"] { width: 1rem; height: 1rem; padding: 0; flex-shrink: 0; accent-color: var(--gold); }
.privacy-link { text-decoration: underline; text-underline-offset: 3px; color: #e4c174; }
.whatsapp-float { box-shadow: 0 8px 26px #0003; border: 1px solid #ffffff40; bottom: max(1.25rem,env(safe-area-inset-bottom)); }
.whatsapp-float .whatsapp-icon { width: 28px; height: 28px; }
.whatsapp-float::before { content: "Falar no WhatsApp"; position: absolute; right: calc(100% + 12px); white-space: nowrap; padding: .65rem .85rem; border: 1px solid #c69a4b55; border-radius: .6rem; background: #071014; color: #fff; font-size: .75rem; opacity: 0; transform: translateX(4px); pointer-events: none; transition: .2s; }
.whatsapp-float:hover::before, .whatsapp-float:focus-visible::before { opacity: 1; transform: none; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid #b8832f; outline-offset: 5px; border-radius: 4px; }
footer > div:last-child { padding-right: 5.5rem; padding-left: 5.5rem; }
/* A fine gold contour rises on the left, mirrored from the reference footer. */
.site-footer { position: relative; isolation: isolate; }
.site-footer::before {
  content: "";
  position: absolute;
  inset: -62px 0 auto;
  height: 80px;
  background: url('../img/footer-curve.svg') center / 100% 100% no-repeat;
  transform: scaleX(-1);
  pointer-events: none;
  z-index: -1;
}
@media (max-width: 640px) {
  .site-footer::before { top: -38.75px; height: 50px; }
}
#inicio [data-reveal]:has(> img) { overflow: hidden; border-radius: 2rem; }
.practice-card, .btn-primary, .btn-secondary, .contact-link, .whatsapp-float {
  transition: transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s ease, border-color .3s ease, background-color .3s ease, filter .3s ease;
}
.practice-icon, .process > svg, .mini-feature svg {
  transition: transform .45s cubic-bezier(.22,1,.36,1), box-shadow .4s ease;
}
.navlink::after { right: 0; transform: scaleX(0); transform-origin: left; transition: transform .35s cubic-bezier(.22,1,.36,1); }
.navlink:hover::after, .navlink[aria-current="location"]::after { transform: scaleX(1); }
.btn-primary:active, .btn-secondary:active { transform: translateY(1px); }
#mobileNav:not(.hidden) { animation: menu-in .28s cubic-bezier(.22,1,.36,1) both; transform-origin: top; }
@keyframes menu-in { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } }
@media (hover: hover) and (pointer: fine) {
  .practice-card:hover .practice-icon { transform: translateY(-3px); box-shadow: 0 8px 20px #9b6b2314; }
  .process:hover > svg { transform: translateY(-4px); }
  .mini-feature:hover svg { transform: translateY(-2px); }
  .btn-secondary:hover, .contact-link:hover { transform: translateY(-2px); }
}
@media (prefers-reduced-motion: reduce) {
  html.scroll-smooth, html { scroll-behavior: auto !important; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .practice-card:hover, .btn-primary:hover, .whatsapp-float:hover { transform: none; }
  .practice-card:hover .practice-icon, .process:hover > svg, .mini-feature:hover svg,
  .btn-secondary:hover, .contact-link:hover, .btn-primary:active, .btn-secondary:active,
  .practice-card:hover a svg, .btn-primary:hover svg:last-child:not(.whatsapp-icon) { transform: none; }
}
/* assets/css/layout.css */
/* Section composition: generous spacing, numbered content and a vertical journey. */
:root { --paper: #f8f6f1; --muted-ink: #626765; --line: #c69a4b40; }
.layout-container { width: min(1180px, calc(100% - 64px)); margin-inline: auto; }
.editorial-section { padding: 104px 0; }
.section-dark { background: #080f12; color: #f8f6f1; }
.section-light { background: var(--paper); color: #152124; }
#areas, #sobre, #como-atuamos, #duvidas { background-image: none; }
main > .editorial-section::before { opacity: .35; }
.section-heading { max-width: 780px; }
.section-heading h2, #duvidas h2, #contato h2 { margin-top: 20px; font-family: 'Cormorant Garamond', serif; font-size: clamp(2.6rem, 4.1vw, 3.9rem); font-weight: 600; line-height: 1.04; letter-spacing: -.025em; }
.section-heading em, #duvidas em, #contato em, .landing-hero em { font-weight: 500; color: #d4ab61; }
.section-light .section-heading em, #duvidas em { color: #916528; }
.section-heading > p:not(.eyebrow), .heading-split > p { max-width: 580px; margin-top: 24px; font-size: .96rem; line-height: 1.85; color: #aeb4b4; }
.section-light .section-heading > p:not(.eyebrow), .section-light .heading-split > p { color: var(--muted-ink); }
.section-light .eyebrow { color: #916528; }
.eyebrow { font-size: .64rem; letter-spacing: .2em; }
.heading-split { max-width: none; display: grid; grid-template-columns: 1.35fr 1fr; gap: 64px; align-items: end; }
.btn-primary, .btn-secondary { border-radius: 4px; padding: 1rem 1.35rem; font-size: .8rem; }
.btn-primary { box-shadow: 0 5px 18px #c69a4b15; }
.landing-hero { background: #080f12; }
.landing-hero > .hero-grid { opacity: .1; }
.landing-hero > .mx-auto { max-width: 1244px; gap: 48px; padding-top: 64px; padding-bottom: 80px; }
.landing-hero h1 { font-size: clamp(3.4rem, 5.15vw, 5rem); line-height: 1.01; letter-spacing: -.035em; }
#inicio [data-reveal]:has(> img) { border-radius: 2px; }
.landing-hero img { border-radius: 2px; }
.landing-hero [data-reveal] > .absolute.border { border-radius: 2px; }
.situation-grid, .practice-grid, .values-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 24px; margin-top: 48px; }
.situation-card { padding: 30px; border: 1px solid #ffffff1a; border-top: 2px solid #b58a45; background: linear-gradient(135deg,#ffffff04,transparent); }
.card-topline { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.index-number { color: #a8803f; font-family: 'Cormorant Garamond',serif; font-size: 2.5rem; font-weight: 500; line-height: 1; }
.card-topline > svg { width: 25px; height: 25px; color: #c69a4b; }
.situation-card h3, .values-grid h3 { margin-top: 28px; font-family: 'Cormorant Garamond',serif; font-size: 1.8rem; font-weight: 600; line-height: 1.2; }
.situation-card > p, .values-grid article > p { margin-top: 14px; color: #aeb4b4; font-size: .85rem; line-height: 1.8; }
.situation-card { display: flex; flex-direction: column; }
.situation-card > a, .text-link { display: inline-flex; align-items: center; gap: 12px; font-size: .76rem; font-weight: 600; color: #e0bb78; }
.situation-card > a { margin-top: auto; padding-top: 26px; }
.situation-card > a svg, .text-link svg { width: 17px; height: 17px; }
.practice-card { padding: 32px; background: #fff; border: 1px solid #dedbd3; border-radius: 3px; box-shadow: none; }
.practice-card .practice-icon { padding: 0; border: 0; background: none; border-radius: 0; width: 28px; height: 28px; }
.practice-card h3 { font-size: 2.05rem; margin-top: 28px; }
.practice-card > p { min-height: 3.1em; font-size: .86rem; color: var(--muted-ink); }
.practice-card ul { padding-block: 24px; border-top: 1px solid #e8e4dc; margin-top: 24px; font-size: .81rem; gap: 12px; }
.practice-card a { border-top: 1px solid #e8e4dc; font-size: .76rem; }
.values-grid { gap: 0; }
.values-grid article { padding: 8px 32px; border-left: 1px solid #ffffff26; }
.values-grid article:first-child { padding-left: 0; border-left: 0; }
.values-grid article:last-child { padding-right: 0; }
.values-grid .index-number { font-size: 1.8rem; }
.values-grid h3 { display: flex; gap: 12px; align-items: center; font-size: 1.65rem; }
.values-grid h3 svg { width: 22px; height: 22px; color: #d4ab61; }
.about-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 80px; align-items: center; }
.about-visual { position: relative; height: 560px; margin: 0 16px 16px 0; }
.about-visual::before { content: ''; position: absolute; inset: 20px -16px -16px 20px; border: 1px solid #b58a45; z-index: -1; }
.about-visual > picture { display: block; width: 100%; height: 100%; }
.about-visual > picture > img { width: 100%; height: 100%; object-fit: cover; }
.about-caption { position: absolute; inset: auto 0 0; padding: 50px 28px 28px; background: linear-gradient(transparent,#071014ee); color: white; }
.about-caption span { display: block; font-family: 'Cormorant Garamond',serif; font-size: 2rem; }
.about-caption small { display: block; margin-top: 6px; color: #d4ab61; font-size: .65rem; text-transform: uppercase; letter-spacing: .15em; }
.about-signature { display: flex; gap: 16px; align-items: center; border-top: 1px solid #dedbd3; padding-top: 24px; margin: 28px 0; font-size: .8rem; line-height: 1.6; color: #626765; }
.about-signature svg { width: 30px; height: 30px; color: #a8803f; }
.about-signature strong { color: #152124; font-weight: 600; }
.journey-layout { display: grid; grid-template-columns: 1fr 1.1fr; gap: 96px; align-items: start; }
.journey-intro { position: sticky; top: 128px; }
.journey-intro .text-link { margin-top: 32px; }
.journey-list { list-style: none; padding: 0; margin: 0; }
.journey-list li { position: relative; padding: 0 0 40px 68px; min-height: 150px; }
.journey-list li::before { content: ''; position: absolute; left: 21px; top: 42px; bottom: 0; width: 1px; background: #c69a4b50; }
.journey-list li:last-child { padding-bottom: 0; }
.journey-list li:last-child::before { display: none; }
.journey-number { position: absolute; top: 0; left: 0; display: grid; place-items: center; width: 43px; height: 43px; background: #c69a4b; border-radius: 50%; color: #071014; font-family: 'Cormorant Garamond',serif; font-weight: 700; font-size: 1.1rem; }
.journey-label { font-size: .64rem; color: #d4ab61; letter-spacing: .08em; text-transform: uppercase; }
.journey-list h3 { font-family: 'Cormorant Garamond',serif; font-size: 1.75rem; line-height: 1.18; margin-top: 10px; }
.journey-list h3 + p { color: #aeb4b4; font-size: .84rem; line-height: 1.8; margin-top: 12px; }
#duvidas > div { max-width: 1244px; gap: 80px; grid-template-columns: 1fr 1.15fr; }
.faq-intro { margin: 24px 0 28px; max-width: 420px; color: var(--muted-ink); font-size: .9rem; line-height: 1.85; }
.faq { border: 1px solid #243237; border-radius: 3px; background: #101b20; padding-inline: 24px; color: #f8f6f1; }
.faq summary { font-size: .85rem; gap: 20px; padding-block: 21px; line-height: 1.6; }
.faq summary svg { color: #d4ab61; }
.faq p { color: #b6bebf; padding-bottom: 24px; font-size: .83rem; }
#contato { padding: 104px 0 120px; background: #080f12; }
#contato > .relative { max-width: 1244px; align-items: center; gap: 80px; }
#contato .contact-link { border: 0; border-bottom: 1px solid #ffffff26; border-radius: 0; padding: 16px 0; }
#contato .contact-link span { font-size: .88rem; }
#contato .contact-link small { color: #aeb4b4; margin-bottom: 4px; }
#contactForm { border: 1px solid #c69a4b40; border-radius: 4px; background: #111b20; box-shadow: 0 20px 70px #0002; }
.form-heading { display: flex; gap: 14px; align-items: center; padding-bottom: 26px; margin-bottom: 26px; border-bottom: 1px solid #ffffff1a; }
.form-heading > svg { width: 24px; color: #d4ab61; }
.form-heading h3 { font-family: 'Cormorant Garamond',serif; font-size: 1.8rem; line-height: 1.2; }
.form-heading p { margin-top: 5px; font-size: .72rem; color: #aeb4b4; }
#contactForm input, #contactForm select, #contactForm textarea { border-radius: 3px; }
.site-footer > div:last-child { max-width: 1244px; padding: 32px 80px 32px 32px; }
@media (max-width: 1023px) {
  .editorial-section { padding: 76px 0; }
  .heading-split, .about-grid, .journey-layout { gap: 40px; }
  .situation-grid, .practice-grid { gap: 16px; }
  .situation-card, .practice-card { padding: 24px; }
  .about-visual { height: 480px; }
  .values-grid article { padding-inline: 20px; }
  .values-grid h3 { align-items: start; }
  #duvidas > div, #contato > .relative { gap: 40px; }
  #contato > .relative { grid-template-columns: 1fr 1.1fr; }
  .landing-hero > .mx-auto { grid-template-columns: 1.1fr .9fr; gap: 24px; min-height: auto; }
  .landing-hero h1 { font-size: 3.4rem; }
  .landing-hero { min-height: auto; }
}
@media (max-width: 767px) {
  .layout-container { width: calc(100% - 40px); }
  .editorial-section { padding: 64px 0; }
  .heading-split, .about-grid, .journey-layout, #duvidas > div, #contato > .relative { grid-template-columns: 1fr; gap: 36px; }
  .situation-grid, .practice-grid, .values-grid { grid-template-columns: 1fr; margin-top: 32px; }
  .situation-card, .practice-card { padding: 28px; }
  .values-grid article, .values-grid article:first-child, .values-grid article:last-child { padding: 28px 0; border-left: 0; border-top: 1px solid #ffffff26; }
  .values-grid h3 { margin-top: 18px; }
  .about-visual { height: 380px; }
  .about-copy { margin-top: 8px; }
  .journey-intro { position: static; }
  .journey-list li { padding-left: 60px; }
  .journey-list h3 { font-size: 1.65rem; }
  .landing-hero > .mx-auto { grid-template-columns: 1fr; padding-top: 48px; padding-bottom: 48px; gap: 36px; }
  .landing-hero h1 { font-size: clamp(2.9rem,10vw,4rem); }
  .landing-hero [data-reveal]:has(> img) { height: 380px; }
  #contato { padding: 64px 0 96px; }
  .site-footer > div:last-child { padding-left: 20px; }
}
/* Full-width hero and alternating practice sections. */
.landing-hero { isolation: isolate; min-height: 740px; }
.landing-hero .hero-background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 65% center; z-index: -2; }
.hero-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #080b0dd9 0%, #080b0d80 43%, #080b0d08 75%); }
.landing-hero > .mx-auto { display: flex; min-height: 660px; }
.landing-hero > .mx-auto > [data-reveal] { width: 58%; max-width: 670px; }
.landing-hero h1 { font-size: clamp(3.4rem, 4.7vw, 4.7rem); }
.landing-hero .trust { color: #eee4d4; }
.situation-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.situation-card { position: relative; transition: border-color .2s, background .2s; }
.situation-card > a::after { content: ''; position: absolute; inset: 0; }
.situation-card:hover, .situation-card:focus-within { border-color: #d4ab61; background: #c69a4b0c; }
.situation-card:focus-within { outline: 2px solid #d4ab61; outline-offset: 4px; }
.practice-sections { margin-top: 64px; }
.practice-section { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(32px, 6vw, 80px); align-items: center; padding: 64px 0; border-top: 1px solid #dedbd3; scroll-margin-top: 100px; }
.practice-section:nth-child(even) .practice-visual { order: 2; }
.practice-visual { aspect-ratio: 1 / 1; overflow: hidden; background: #e8e4dc; }
.practice-visual picture { display: block; width: 100%; height: 100%; }
.practice-visual img { width: 100%; height: 100%; object-fit: cover; }
.practice-section .practice-card { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.practice-section .practice-card:hover { transform: none; box-shadow: none; }
.practice-section .practice-card h3 { font-size: clamp(2.2rem, 3.5vw, 3.3rem); line-height: 1.1; margin-top: 28px; }
.practice-section .practice-card > p { font-size: 1rem; min-height: 0; margin-top: 22px; }
.practice-section .practice-card ul { font-size: .95rem; gap: 16px; padding-block: 28px; }
.practice-section .practice-card a { padding-top: 24px; font-size: .87rem; color: #82571d; }
@media (max-width: 1023px) {
  .situation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .landing-hero > .mx-auto > [data-reveal] { width: 70%; }
  .landing-hero .hero-background { object-position: 62% center; }
}
@media (max-width: 767px) {
  .landing-hero { min-height: auto; }
  .landing-hero > .mx-auto { min-height: 680px; padding-block: 56px; }
  .landing-hero > .mx-auto > [data-reveal] { width: 100%; }
  .landing-hero .hero-background { object-position: 72% center; }
  .hero-shade { background: linear-gradient(90deg, #080b0de8, #080b0d9c), linear-gradient(0deg, #080b0d80, transparent); }
  .landing-hero h1 { font-size: clamp(2.9rem, 10vw, 4rem); }
  .practice-sections { margin-top: 40px; }
  .practice-section { grid-template-columns: 1fr; gap: 32px; padding: 40px 0; }
  .practice-section:nth-child(even) .practice-visual { order: 0; }
  .practice-visual { aspect-ratio: 4 / 3; }
}
@media (max-width: 479px) { .situation-grid { grid-template-columns: 1fr; } }
