/*
Theme Name: Papagiannoulas Atelier
Author: Custom Studio
Version: 1.0.0
Text Domain: papagiannoulas
Description: Minimal multilingual legal practice theme.
*/
:root{--green:#123b33;--deep:#092922;--cream:#f8f6ef;--gold:#b79a5a;--ink:#1e302d;--muted:#697773}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.75 system-ui,-apple-system,sans-serif}a{color:inherit}a:hover{color:var(--gold)}img{max-width:100%;height:auto}h1,h2,h3,.brand{font-family:Georgia,serif;font-weight:400;line-height:1.15}h1{font-size:clamp(2.8rem,6vw,5.5rem)}h2{font-size:clamp(2rem,4vw,3.3rem)}h3{font-size:1.5rem}.container{width:min(1180px,calc(100% - 44px));margin:auto}.site-header{position:relative;z-index:100;background:var(--cream);border-bottom:1px solid #deded5}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{font-size:clamp(1.2rem,2vw,1.75rem);text-decoration:none}.nav{display:flex;align-items:center;gap:28px}.nav a{text-decoration:none;font-size:.87rem;letter-spacing:.055em;text-transform:uppercase}.nav a[aria-current=page]{color:var(--gold)}.nav-toggle{display:none;border:0;background:transparent;width:46px;height:46px;cursor:pointer}.nav-toggle span{display:block;height:2px;background:var(--green);margin:6px 0;transition:transform .25s,opacity .2s}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}.lang{position:relative}.lang-button{border:1px solid #d7d4c7;background:transparent;padding:9px 12px;cursor:pointer;color:var(--green)}.lang-menu{position:absolute;right:0;top:100%;min-width:140px;background:white;border:1px solid #ddd;box-shadow:0 12px 28px #0002;padding:8px;z-index:200}.lang-menu[hidden]{display:none}.lang-menu a{display:block;padding:7px 10px}.hero{background:var(--green);color:var(--cream);padding:clamp(90px,12vw,160px) 0}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--gold)}.hero p{max-width:620px;font-size:1.2rem;color:#e1e8de}.btn{display:inline-block;padding:12px 24px;background:var(--gold);color:var(--deep);text-decoration:none;border:1px solid var(--gold);font-weight:600;cursor:pointer}.btn.outline{background:transparent;color:var(--green)}.section{padding:85px 0}.section.alt{background:#f0efe7}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:white;border:1px solid #e5e2d7;padding:28px;min-width:0}.card small{color:var(--muted)}.card a{text-decoration:none}.card h3{margin:12px 0}.page-heading{padding:72px 0 42px;border-bottom:1px solid #ddd}.page-heading h1{margin:0}.prose{max-width:760px}.prose img{border-radius:2px}.about-grid,.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}.portrait{background:#e8e6dd;min-height:330px;display:grid;place-items:center;overflow:hidden}.portrait img{width:100%;height:auto}.panel{background:white;border:1px solid #e5e2d7;padding:clamp(20px,3vw,36px);min-width:0}.detail{margin:0 0 20px}.detail strong{display:block;font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.map{margin-top:30px;aspect-ratio:4/3;background:#e7e8e1}.map iframe{width:100%;height:100%;border:0}.field{margin-bottom:17px}.field label{display:block;margin-bottom:6px}.field input,.field textarea{width:100%;padding:13px;background:#fafaf7;border:1px solid #cbd2cc;font:inherit}.field textarea{min-height:155px}.filters{display:flex;gap:12px;align-items:center;margin:20px 0 28px}.filters select{padding:11px;border:1px solid #ccc;background:white}.pagination{margin:32px 0;display:flex;gap:12px}.pagination a,.pagination span{padding:8px 13px;border:1px solid #ddd}.footer{background:var(--deep);color:#e9ece4;padding:65px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}.footer a{color:inherit}.footer small{color:#c1cbbf}.copyright{border-top:1px solid #ffffff30;margin-top:45px;padding-top:22px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;z-index:999}.notice{padding:12px;border:1px solid var(--gold)}@media(max-width:850px){.header-inner{min-height:76px}.nav-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:24px max(22px,calc((100vw - 1180px)/2));border-bottom:1px solid #ddd;box-shadow:0 20px 35px #0002;flex-direction:column;align-items:stretch;gap:14px}.nav.open{display:flex;animation:drop .22s ease-out}.lang{align-self:flex-start}.lang-menu{right:auto;left:0}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}}@media(max-width:560px){.cards{grid-template-columns:1fr}.section{padding:55px 0}.section-head{align-items:start;flex-direction:column}.brand{font-size:1.16rem}.page-heading{padding:50px 0 28px}}@keyframes drop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}

/* Refinements: contact CTA is gold only, equal height contact panels, rounded corners. */
.hero .btn{background:var(--gold);color:var(--deep);border-color:var(--gold);border-radius:7px}
.contact-grid{align-items:stretch}.contact-grid>.panel{height:100%;border-radius:16px;overflow:hidden;background:#fff}.contact-grid .btn{border-radius:7px}.contact-grid .map{border-radius:10px;overflow:hidden}
.card{border-radius:12px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #123b3310}
.btn{border-radius:7px;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-2px)}
.section-head .btn.outline{border-color:var(--gold);color:var(--green);background:transparent}.section-head .btn.outline:hover{background:var(--gold);color:var(--deep)}
.empty-state{grid-column:1/-1;color:var(--muted);padding:18px 0}.nav a:focus-visible,.btn:focus-visible,.lang-button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

/* v1.2: Home journal columns side by side on desktop; stack on narrow screens. */
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}.journal-column{min-width:0;background:#fffdf8;border:1px solid #e4dfd2;border-radius:16px;padding:clamp(20px,3vw,36px)}.journal-column .section-head{align-items:center;flex-wrap:wrap}.journal-column .section-head h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:12px 0 0}.journal-column .cards{grid-template-columns:1fr;gap:14px}.journal-column .card{padding:20px;background:var(--cream)}.hero .btn{background:transparent;color:var(--cream);border:1px solid var(--gold);border-radius:12px}.hero .btn:hover{background:var(--gold);color:var(--deep)}.map iframe:not([src]){display:block}@media(max-width:850px){.journal-grid{grid-template-columns:1fr}}

/* v1.3: refined accessible interface */
.btn,.panel,.journal-column,.field input,.field textarea{border-radius:14px}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid .panel{min-height:100%}.journal-column .section-head .btn{white-space:nowrap}.journal-column .card{border-radius:10px}.map{border-radius:12px}.hero .btn{background:transparent!important;color:var(--cream)!important;border-color:var(--gold)!important}.hero .btn:hover{background:var(--gold)!important;color:var(--deep)!important}.site-header .brand{font-size:clamp(1.1rem,2vw,1.7rem)}.field input:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:1px}@media(max-width:850px){.contact-grid{grid-template-columns:1fr}}
